Postado Janeiro 8, 2011 14 anos {Pegando ID de um processo} O ID de um processo no Delphi pode servir para muitas funções, como ler Addresses e escrever Addresses na memória do programa em tempo real, vou ensinar como conseguir o ID do processo. Componentes 1 Label 1 Button Código Dê 2 cliques no Button que você adicionou e adicione isto: var fw,pid:dword; begin fw:=findwindow(nil,'Nome da Janela'); if fw = 0 then begin Label1.Caption:='Processo não encontrado.' end else begin getwindowthreadprocessid(fw,@pid); Label1.Caption:='ID do Processo: '+inttostr(pid); end; Pronto seu programa está pronto, mas vou explicar o que faz cada função. fw é o ID da janela, que é definido pela função findwindow que retorna um ID Logo depois ele checa se o ID que contem em fw é nulo se for nulo quer dizer que a janela não foi encontrada, caso o valor não seja nulo ele executa o comando getwindowthreadprocessid que pega o ID da janela e encontra o ID do processo e define o id dentro do valor "pid" declarado em "var", depois o pid é convertido em string e mostrado na Label. Há outros métodos de conseguir o ID de processos porém métodos mais complicados. Aí você se pergunta... Qual a utilidade disto? Vou explicar com a função: OpenProcess(Process_all_access, false, pid) Essa função abre o processo e permite escrever e ler dados do processo veja que ele usou pid no final pois pid é o ID que ele pegou e ele irá usar o processo deste programa. Usando isso com mais conhecimento você pode criar até um bot... "A esperança é o sonho do homem acordado." Aristóteles
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.