sexta-feira, 17 de fevereiro de 2017

DELPHI - Pegar Handle através do PID do executável - Catch Handle through the PID of the executable

Essa função retorna o Handle de uma janela, passando o PID do executável como parametro.



function GetHWNDFromPID(const PID: Cardinal): HWND;
var
  MHandle: HWND;
  MProcPID: Cardinal; 
begin
  Result := 0;
  MHandle := GetTopWindow( 0 );

  while Boolean( MHandle ) do
  begin
    { ** O retorno do método não é necessário. Apenas o seu Handle ** }
    GetWindowThreadProcessId( MHandle, MProcPid );

    if MProcPid = PID then
    begin
      Result := MHandle;
      Break;
    end;
    { ** Recuperando a próxima janela ** }
    MHandle := GetNextWindow( MHandle, GW_HWNDNEXT );
  end;
end;


Retirado do ActiveDelphi

Nenhum comentário:

Postar um comentário