我有一个文件MyProcess.exe
。
我运行它,然后在它仍在运行时,将其重命名为old_MyProcess.exe
。
我使用MyProcess.exe
名称查看了所有流程,找到了它,但process.Modules[0].FileName
返回MyProcess.exe
而不是old_MyProcess
。
我注意到在任务管理器中,如果你添加了'图像路径名称'在列中,您可以看到old_MyProcess.exe
,但win32调用GetModuleFileNameEx
和GetImagePathName
都返回MyProcess.exe
。
答案 0 :(得分:2)
使用Dumpbin.exe / imports查看Taskmgr.exe以查看它使用的winapi函数,我在QueryFullProcessImageName()中看到了一个很好的匹配。需要Windows v6.0及更高版本(Vista或更高版本)。
结果证明猜测是正确的:)