我需要从一个PID获取完整路径。
我查看了这个问题 C++ Windows - How to get process path from its PID,并编写了以下代码:
function GetFullPathFromPID(PID: DWORD): string;
var
hProcess: THandle;
ModName : Array[0..MAX_PATH + 1] of Char;
begin
Result:='';
hProcess := OpenProcess(PROCESS_ALL_ACCESS,False, PID);
try
if hProcess <> 0 then
if GetModuleFileName(hProcess, ModName, Sizeof(ModName))<>0 then
Result:=ModName
else
ShowMessage(SysErrorMessage(GetLastError));
finally
CloseHandle(hProcess);
end;
end;
但总是返回以下消息:
指定的模块无法找到
如何从进程 ID(PID)获取完整路径?