Encerrando um processo atrelado a outro via taskkill no Prompt de Comando

Às vezes é necessário encerrar um processo no Windows, e algumas vezes esse processo tem filhos (childs), como encerrar nesse caso?


Algumas vezes um processo acaba ficando atrelado a outro, ou até mesmo com subprocessos. Por exemplo, para quem utiliza Protheus, se o usuário manda imprimir via Servidor, ele cria um subprocesso, e isso acaba às vezes travando o serviço na hora de parar ou reiniciar.

Então se tentarmos encerrar o processo via taskkill, mesmo com o /F de forçar, ele vai mostrar a seguinte mensagem:

ERROR: The process with PID [...] could not be terminated.
Reason: There is no running instance of the task

E como resolver nesse caso? Ao usar o taskkill, além do /F, utilizar o /T que encerra a árvore de processos geradas por esse PID. O comando então ficaria assim:

taskkill -pid [...] /F /T

Referências:

stackoverflow.com

Bom pessoal, por hoje é só.

Abraços e até a próxima.

Dan Atilio (Daniel Atilio)
Especialista em Engenharia de Software pela FIB. Entusiasta de soluções Open Source. E blogueiro nas horas vagas.

Deixe uma resposta