Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   API de Windows (https://www.clubdelphi.com/foros/forumdisplay.php?f=7)
-   -   Obtener Nombre EXE, de una Aplicacion Mendiante su Handle (https://www.clubdelphi.com/foros/showthread.php?t=22861)

spider_Ramon 29-06-2005 19:51:25

Obtener Nombre EXE, de una Aplicacion Mendiante su Handle
 
Hola a Todos, Alguien Sabe Como Obtener El Nombre de Exe de una Aplicacion Mediante su Handle.

Gracias.

spider_Ramon 29-06-2005 20:15:11

Gracias
 
Gracias a TODOS pero ya lo Resolvi, encontre en la Internet una Function que me regresa el Nombre del Executable mandandole su Handle. :D

Gracias, si alguien lo ocupa solo mandenme un EMAIL se lo constestare a la Brevedad Posible. ;)

jachguate 29-06-2005 20:57:31

Es de esperar, si ya encontraste la informacion, que publiques aqui mismo la solución, dado que servirá en el futuro cuando alguien realice una búsqueda sobre el mismo tema y es una forma de devolver a la comunidad parte de la ayuda que has recibido de ella.

Hasta luego.

;)

spider_Ramon 30-06-2005 00:11:01

Ya lo se, y no es la primera vez que me lo dicen, pero es un buen el codigo, por eso deje mi correo y especifique a la breveda posible, o quieres que pegue un codigo de 345 Lines???


Lo Dicho a quien le Sirva Escribame!!!

roman 30-06-2005 00:23:27

Si lo encontraste en Internet, ¿no puedes simplemente poner el enlace?

// Saludos

spider_Ramon 30-06-2005 00:37:01

Disculpen Mi Necedad...
 
Ahi va el Codigo, en cuanto la enlace de Internet saque de Aqui, de alla, de ahi... me explico?

Código Delphi [-]
 
//***************************/
//Esta Funcion Acepta el Handle de la Ventana y Regresa el Nombre de su Exe
Function TForm1.GetExePath(WH : HWND): String;
var
  dwActiveProcessId : DWORD;
  Snap   : THandle;
  pe32   : TPROCESSENTRY32;
Begin
  result:= '';
  GetWindowThreadProcessId(WH, @dwActiveProcessId );
  try
    Snap := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, dwActiveProcessId);
    if Snap <> 0 then
    begin
      if Process32First(Snap, pe32) then
      begin
        if pe32.th32ProcessID = dwActiveProcessId then
        begin
          result := String(pe32.szExeFile);
        end
        else
        begin
          while Process32Next(Snap, pe32) do
          begin
            if pe32.th32ProcessID = dwActiveProcessId then
            begin
              Result := String(pe32.szExeFile);
              Break;
            end;
          end;
        end;
      end;
    end;
  finally
    CloseHandle(Snap);
  end;
end;
 
//Llamada a la Funcion
GetExePath(GetForegroundWindow)
 
/***************************/

Ok, Lo Anterior Regresa el Handle de la Ventana Activa en Window, lo qu ehace mi proghrama es un Guardian que revisa que Tecla se Presiona a Nivel Window, y revisa de una lista de programas si esta esa aplicacion y si es asi que letra se debe bloquear, lei que muchos lo requerian mas nadie me daba el codigo echo por eso ... sqque de aqui... de alla.. de ahi ok.

Disculpen y Espero y les Sirva.

roman 30-06-2005 00:48:06

Pues muchas gracias.

¿No eran 345 líneas? :)

// Saludos


La franja horaria es GMT +2. Ahora son las 22:47:03.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi