Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос по ф-ции 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);


Наверх

Титульная страница Поиск, карта сайта Написать письмо