PDA

Ver la Versión Completa : Obtener Nombre EXE, de una Aplicacion Mendiante su Handle


spider_Ramon
29-06-2005, 19:51:25
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 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
Ahi va el Codigo, en cuanto la enlace de Internet saque de Aqui, de alla, de ahi... me explico?


//***************************/
//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