uses psapi;
{根據進程PID獲取程序所在路徑的函數}
function GetProcessExePath(PID: Cardinal): string;
var
pHandle: THandle;
buf: array[0..MAX_PATH] of Char;
begin
{獲取進程句柄}
pHandle := OpenProcess(PROCESS_QUERY_INFORMATION or PROCESS_VM_READ, False, PID);
{獲取進程路徑}
GetModuleFileNameEx(pHandle, 0, buf, Length(buf));
CloseHandle(pHandle);
Result := buf;
end;
http://blog.csdn.net/cmdasm/article/details/9961631