【发布时间】:2011-03-24 21:51:25
【问题描述】:
我正在尝试通过 pid 获取进程路径,但出现 Win32Exception(访问 ID 被拒绝)。
代码如下所示:
string path = Process.GetProcessById(pid).MainModule.FileName
我曾尝试将 OpenProcess 与 GetModuleFileNameEx 一起使用,但 OpenProcess 返回 0。我什至尝试根据 C# – How to enable SeDebugPrivilege 启用 SeDebugPrivilege,但没有帮助。
以上代码适用于大多数进程,但 SynTPHelper.exe(Synaptics Pointing Device Helper)会引发错误该应用程序在与我的代码相同的用户名下运行。我的应用程序和进程都以 64 位运行。
是否可以在不以管理员身份运行我的应用程序的情况下检索路径?
编辑
即使我没有以管理员身份运行任务管理器,它也能够“打开文件位置”。
【问题讨论】:
标签: c# winapi process access-denied win32exception