Удаление или отключение диспетчера задач Chrome с помощью пакетного файла

Удаление или отключение диспетчера задач Chrome с помощью пакетного файла

Я пытаюсь найти способ отключить или полностью удалить диспетчер задач Chrome.

Мое предлагаемое решение заключается в использовании пакетного файла, работающего в фоновом режиме, для определения того, открыт ли Chrome Task Manager, и выключения Chrome, если он открыт. К сожалению, я не знаю пакетного программирования и у меня мало времени для решения этой проблемы.

Вот несколько идей, которые у меня возникли по этому поводу:

  • Эта команда определяет количество запущенных экземпляров Chrome:

    tasklist /nh /fi "imagename eq chrome.exe" | find /i "chrome.exe" >nul && (wmic process where name="chrome.exe" | find "chrome.exe" /c

  • Эта команда завершает все процессы Chrome:

    taskkill /im chrome.exe

Это не работает, поскольку Chrome не создает новый процесс при открытии диспетчера задач, хотя и создает новое окно. (Никаких изменений вПроцессывкладка диспетчера задач Windows, но есть одна вЗаданиятаб.)

Меня устроит программа, которая закрывает Chrome, если обнаруживает, что открыто два его окна. На данном этапе приветствуются даже частичные решения.

решение1

Это должно помочь вам в этом.

Чтобы определить, открыт ли диспетчер задач, используйте что-то вроде этого:

tasklist /fi "WINDOWTITLE eq Task Manager - Google Chrome" /v | find "chrome.exe"

В пакетном файле вам, вероятно, придется экранировать символ вертикальной черты:

tasklist /fi "WINDOWTITLE eq Task Manager - Google Chrome" /v ^| find "chrome.exe"

Затем используйте %ERRORLEVEL%проверку, чтобы увидеть, нашли ли вы его, и убейте их всех:

if "%ERRORLEVEL%" == "1" TASKKILL /IM chrome.exe /F

Я предоставлю вам возможность зацикливать пакетно ( sleepтакже рассмотрите возможность добавления ).

решение2

Лучше просто закрыть окно диспетчера задач Chrome, чем закрывать весь браузер, что, судя по всему, и является вашей целью.

Если вы не привержены пакетному файлу, то самый простой способ сделать это — использоватьAutoHotkeyсценарий:

;Script paramters
#SingleInstance, force
#Persistent
SetBatchLines, -1
Process, Priority,, High

;Set up window hook
Gui +LastFound
hWnd:=WinExist()
DllCall("RegisterShellHookWindow", UInt,hWnd)
MsgNum:=DllCall("RegisterWindowMessage", Str,"SHELLHOOK")
OnMessage(MsgNum, "ShellMessage")
HSHELL_WINDOWCREATED:=1
Return

;Hook function
ShellMessage(wParam,lParam)
{
    if (wParam=HSHELL_WINDOWCREATED)               ;Window created
    {
        WinGetTitle, Title, ahk_id %lParam%        ;Get window title
        if  (Title="Task Manager - Google Chrome") ;Check if Chrome Task Manager
            WinClose, ahk_id %lParam%              ;Close it
    }
}

(Конечно, если вы ищете безопасность и пытаетесь заблокировать браузер, то это не правильный путь. К сожалению, я не уверен, что Chrome изначально поддерживает безопасный режим блокировки.)

Связанный контент