![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как узнать полный путь к файлу процесса зная его ID в XP? [D5, Win2k, WinXP]
Dmitryy © (2003-02-21 11:23:00)???
Laim (2003-02-22 20:56:00) [1]Для NT подходит следующее:
USES PSApi,TLHelp32;
FUNCTION GetExeName(id_a:DWORD):string;
VAR
ppe:PProcessEntry32;
ph:THandle;
mh:hmodule;
cm:cardinal;
mn:array[0..max_path] of char;
BEGIN
new(ppe);
ph:=OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, false, id_a);
IF ph>0 THEN
BEGIN
EnumProcessModules(ph, @mh, 4, cm);
GetModuleFileNameEx(ph, mh, mn, sizeof(mn));
strcopy(ppe^.szExeFile, mn);
CloseHandle(ph);
END;
IF FileExists(ppe^.szExeFile) THEN
BEGIN
result:=ppe^.szExeFile;
END ELSE Result:="Error";
END;