3

我有以下代码正在从属于Users组的本地用户下运行:

String processName = System.Diagnostics.Process.GetCurrentProcess().MainModule.ModuleName;

使用以下堆栈System.ComponentModel.Win32Exception声明失败:Access is denied

System.Diagnostics.ProcessManager.OpenProcess(Int32 processId, Int32 access, Boolean throwIfExited)
System.Diagnostics.NtProcessManager.GetModuleInfos(Int32 processId, Boolean firstModuleOnly)
System.Diagnostics.Process.get_MainModule()

现在MSDN 文章在页面底部有“社区内容”,说当代码被提升的进程或其他用户调用时会观察到这种行为,因为它会尝试打开进程。

好的,它尝试打开该进程,但代码在属于Users组的用户下运行,为什么拒绝访问打开该进程?

4

0 回答 0