Kill processo que não aparece no gerenciador de tarefas

4

Eu sou capaz de matar processos em execução que aparecem no gerenciador de tarefas, mas existem alguns jogos como KnightOnline e Metin2 que não aparecem no gerenciador de tarefas e, portanto, não posso matá-los. Eu estive procurando por uma solução, mas não consegui encontrar. Este é um software de internet café e eu só quero fechar todos os programas e jogos quando um cliente sai para que o novo cliente tenha um novo desktop.

Como o Windows automaticamente fecha tudo, pensei em encerrar a sessão e relogar, mas isso não parece ser fácil e nem o melhor caminho.

Esperando pelos seus comentários valiosos

    
por teknolog 07.04.2011 / 21:22

4 respostas

4

Use o ProcessExplorer - link para verificar todos os processos e fechar o que você deseja. Ele deve mostrar todos os aplicativos em todas as contas, se você tiver direitos de administrador, é claro.

Para eliminá-lo de forma programática, verifique esta postagem: link

Quando você não sabe o nome do processo, mas você sabe o nome do executável que é executado no seu computador (C: ... \ Metin.exe), então você pode percorrer todos os processos e procurar por processos que na lista de módulos carregados (propriedade Modules) tem módulo com nome de seu executável (propriedade FileName na classe ProcessModule). Talvez isso ajude.

    
por 07.04.2011 / 21:27
3

Se você não conseguir encontrar seu aplicativo na guia Aplicativos, no Gerenciador de tarefas, vá para a segunda guia "Processos" e, em seguida, pressione "Finalizar processo", normalmente todos os processos têm nomes semelhantes aos aplicativos. veja a imagem abaixo:

    
por 07.04.2011 / 21:34
1

Existe o método Kill em Process . Você pode usá-lo dessa maneira:

var procs = System.Diagnostics.Process.GetProcesses(); // Get all processes in the system
procs[0].Kill();

Existe também o método GetProcessesByName com a ajuda de que você pode obter avaliações por seus nomes:

var procs = System.Diagnostics.Process.GetProcessesByName("firefox");
    
por 07.04.2011 / 22:06
1

De uma linha de comando

"tasklist | more"

preste atenção no PID (por exemplo, 123)

para matar o item do

"taskkill /f /pid 123"

O benefício é que esses comandos também funcionam em sistemas remotos.

"tasklist /s <systemname> /u <domain>\<user>"

mesmo para taskkill

    
por 07.04.2011 / 22:54