
我正在嘗試找到一種方法來停用或完全刪除 Chrome 的任務管理器。
我提出的解決方案涉及使用在背景運行的批次文件來檢測 Chrome 任務管理器是否打開,如果打開則關閉 Chrome。不幸的是,我不知道批次編程,而且解決這個問題的時間很短。
我對此有一些想法:
此命令檢測正在執行的 Chrome 實例的數量:
任務清單 /nh /fi "imagename eq chrome.exe" | find /i "chrome.exe" >nul && (wmic 流程,其中 name="chrome.exe" | find "chrome.exe" /c
此命令會終止所有 Chrome 進程:
taskkill /im chrome.exe
這不起作用,因為 Chrome 在開啟任務管理器時不會建立新進程,但它會建立一個新視窗。 (沒有變化流程Windows 工作管理員的標籤中,但有一個任務標籤。
我會選擇一個程序,如果 Chrome 檢測到打開了兩個窗口,它就會關閉 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 任務管理器窗口,而不是殺死整個瀏覽器,無論如何,這似乎是您的目標。
如果您不致力於批次文件,那麼完成此操作的簡單方法是使用自動熱鍵腳本:
;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 本身是否支援安全鎖定模式。)