![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Вопрос по ф-ции GetProcessImageFileName [D7, XP]
T.V © (2007-06-26 21:25:00)Доброго времени суток. Пытаюсь получить полный путь к exe по ID процесса с помощью функции
GetProcessImageFileName, но вместо имени диска она возвращает строку вида
\Device\HarddiskVolume1\Имя_папки\Project1.exe.
Как перевести эту строку в C:\Имя_папки\Project1.exe?
Заранее блогодарен за помощь!
Инс (2007-06-26 23:54:00) [1]Строчку пропустил. Перед CloseHandle сделайте
if Z>0 then SetLength(FileName,Z) else FileName:='';
Инс (2007-06-26 23:50:00) [2]function GetModuleFileNameEx(hProcess,hModule:cardinal;lpFilename:pchar;
nSize:cardinal):cardinal;stdcall;external 'psapi.dll' name 'GetModuleFileNameExA';
H:=OpenProcess(PROCESS_QUERY_INFORMATION or
PROCESS_VM_READ,false,processID);
SetLength(FileName,MAX_PATH);
Z:=GetModuleFileNameEx(H,0,PChar(FileName),MAX_PATH);
CloseHandle(H);