Removendo ou desabilitando o Gerenciador de Tarefas do Chrome com um arquivo em lote

2

Estou tentando encontrar uma maneira de desativar ou remover completamente o Gerenciador de tarefas do Chrome.

Minha solução proposta envolve o uso de um arquivo em lote em execução em segundo plano para detectar se o Gerenciador de tarefas do Chrome está aberto e encerrar o Chrome, se estiver. Infelizmente, não conheço programação em lote e estou com pouco tempo para que esse problema seja resolvido.

Aqui estão algumas ideias que eu tenho para isso:

  • Este comando detecta quantas instâncias do Chrome estão em execução:

    lista de tarefas / nh / fi "imagename eq chrome.exe" | encontrar / i "chrome.exe" > nul & & (processo wmic onde nome="chrome.exe" | encontre "chrome.exe" / c

  • Este comando elimina todos os processos do Chrome:

    taskkill / im chrome.exe

Isso não funciona porque o Chrome não cria um novo processo quando o Gerenciador de tarefas é aberto, embora crie uma nova janela. (Não há alteração na guia Processos do Gerenciador de Tarefas do Windows, mas há uma na guia Tarefas ).

Eu vou me conformar com um programa que desligue o Chrome se ele detectar duas janelas abertas, até mesmo soluções parciais serão bem-vindas neste momento.

    
por blanket 30.11.2013 / 00:46

2 respostas

0

Isso deve te levar até lá.

Para detectar se o Gerenciador de Tarefas está aberto - use algo assim:

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

Em um arquivo de lote, você provavelmente precisará escapar do caractere de pipe:

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

Em seguida, use um %ERRORLEVEL% check para ver se você o encontrou e mate todos:

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

Vou deixar você fazer um loop em lote (considere também adicionar um sleep ).

    
por 30.11.2013 / 01:19
0

Seria melhor simplesmente fechar a janela do Gerenciador de Tarefas do Google Chrome em vez de matar o navegador inteiro, o que parece ser seu objetivo de qualquer maneira.

Se você não estiver comprometido com um arquivo em lote, uma maneira fácil de fazer isso é usar um script 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
    }
}

(É claro que, se você está procurando segurança e tentando bloquear o navegador, esse não é o caminho certo a seguir. Infelizmente, não tenho certeza se o Chrome suporta nativamente um modo de bloqueio seguro.)

    
por 30.11.2013 / 01:41