Registriert seit: 11. Apr 2006
152 Beiträge
|
Re: Pfad über Prozess
10. Sep 2006, 23:07
So hier noch nen bissel sauberer. Funktionieren aber beide.
Delphi-Quellcode:
function GetProcessPath(Exename: string): String;
var
hProcSnap, hModSnap: THandle;
PE32: TProcessEntry32;
ME32: TModuleEntry32;
begin
Result := '';
hProcSnap := CreateToolHelp32SnapShot(TH32CS_SNAPPROCESS, 0);
if hProcSnap <> INVALID_HANDLE_VALUE then
begin
PE32.dwSize := SizeOf(ProcessEntry32);
if Process32First(hProcSnap, PE32) = True then
begin
while Process32Next(hProcSnap, PE32) = True do
begin
if Pos(Exename, PE32.szExeFile) <> 0 then
begin
hModSnap := CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, PE32.th32ProcessID);
if hModSnap <> INVALID_HANDLE_VALUE then
begin
ME32.dwSize := SizeOf(TModuleEntry32);
if Module32First(hModSnap, ME32) = True then
Result := ME32.szExePath;
end;
CloseHandle(hModSnap);
end;
end;
end;
CloseHandle(hProcSnap);
end;
end;
|
|
Zitat
|