Entwickler-Ecke
Windows API - Pfad aus Prozess oder Handle
Regan - So 01.03.09 14:42
Titel: Pfad aus Prozess oder Handle
Hallo,
mein Titel verrät eigentlich schon alles.
Zur Zeit verwende ich folgende Funktion:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:
| function ProcessFileName(PID: DWORD): string; var Handle: THandle; begin Result:=''; Handle:=OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, False, PID); if Handle <> 0 then try SetLength(Result, MAX_PATH); if GetModuleFileNameEx(Handle, 0, PChar(Result), MAX_PATH) > 0 then SetLength(Result, StrLen(PChar(Result))) else Result := ''; finally CloseHandle(Handle); end; end; |
Leider funktioniert die nicht. Ich könnte auch alternativ ein Handle anbieten.
Wie bekomme ich den Pfad sonst noch raus?
MfG
Regan
BenBE - So 01.03.09 14:50
Du versuchst mit einem Prozess-Handle eine Modulnamen-Abfrage zu tätigen. Das kann nicht gehen...
Siehe ToolHelp32-API, dort gibt es Funktionen für den Snapshoot.
Ansonsten konnte man glaube auch über GetModuleFilenameEx unter Angabe diverser Parameter das für Fremdprozesse abfragen, wenn man da ein wenig gewühlt hat ...
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!