ich schaffe es mit folgendem Code von einem Fensterhandle auf die zugehörige Exe-Datei zu schließen.
Delphi-Quellcode:
function hGetWindowModuleFileName(const hSrcWnd: HWND): string;
var
Data :TProcessEntry32;
hID :DWord;
Snap : Integer;
Done : boolean;
ExeName : string;
begin
Result := '';
try
GetWindowThreadProcessId(hSrcWnd,@hID);
Snap:=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
Done:=false;
ExeName := '';
try
Data.dwSize:=SizeOf(Data);
if(Process32First(Snap,Data))then
begin
repeat
if Data.th32ProcessID=hID then
begin
ExeName:= StrPas(Data.szExeFile);
Done:=true;
end;
until Done or not(Process32Next(Snap,Data));
end;
finally
Windows.CloseHandle(Snap);
end;
result := ExeName;
except
end;
end;
wie bekomme ich es aber hin den kompletten Pfad der EXE auszulesen (über ein bestimmtes Fensterhandle)?