Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

YaaN

[Resolvido] Detectar Processos

Recommended Posts

Olá!

 

Como posso detectar processos e executar uma função? ( Uma MSGBOX como exemplo )

 

O motivo de querer esse código, é que estou a desenvolver um pequeno " MULTI TOOL " para segurança.. no qual tem a função de checar os processos abertos e determinar se o mesmo pode conter um virus..

 

Como sabemos existe vários virus que criam seu proprio processo. Então oque quero é criar uma pequena lista dos processos que podem ser um virus ( Já tenho essa lista ) e abrir uma msgbox.

 

Exemplo: O usuário clicou no botão CHECAR PROCESSOS, ele acha o processo virus.exe ( Que está naquela listinha dita acima ).. ele vai retornar a MSGBOX " O processo VIRUS.EXE pode ser malicioso "

 

Acho que da para vocês entenderem minha duvida

Compartilhar este post


Link para o post
Compartilhar em outros sites

uses TlHelp32; 


function processExists(exeFileName: string): Boolean; 
var 
 ContinueLoop: BOOL; 
 FSnapshotHandle: THandle; 
 FProcessEntry32: TProcessEntry32; 
begin 
 FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); 
 FProcessEntry32.dwSize := SizeOf(FProcessEntry32); 
 ContinueLoop := Process32First(FSnapshotHandle, FProcessEntry32); 
 Result := False; 
 while Integer(ContinueLoop) <> 0 do 
 begin 
   if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = 
     UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) = 
     UpperCase(ExeFileName))) then 
   begin 
     Result := True; 
   end; 
   ContinueLoop := Process32Next(FSnapshotHandle, FProcessEntry32); 
 end; 
 CloseHandle(FSnapshotHandle); 
end; 

 

Fonte: Delphi Triks

 

Usando:

if processexists('virus.exe') then ShowMessage('VIRUS ABERTO');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado amigo.

Funcionando perfeitamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.