【问题标题】:How to get process file name with non-elevated rights?如何获取具有非提升权限的进程文件名?
【发布时间】:2011-10-27 10:25:38
【问题描述】:

我想枚举机器上的所有进程,检查Process.MainModule.FileName 是否匹配特定路径。对于 Windows 7 上的非提升权限,Process.MainModule.FileName 会引发访问被拒绝异常。

有没有更好的方法来做到这一点?

【问题讨论】:

    标签: c# windows-7 visual-studio-2005


    【解决方案1】:

    抱歉,要访问您没有 PROCESS_QUERY_INFORMATION 权限的进程,需要管理员权限

    您可以完全访问同一用户上下文中的进程,以及 CreateProcess 返回的进程句柄。

    【讨论】:

    • QueryFullProcessImageName 只需要 PROCESS_QUERY_LIMITED_INFORMATION,但仅适用于 Vista 和 7。因此有可能在没有提升权限的情况下获取此信息。但我需要 XP 的功能。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-13
    • 2011-09-10
    • 2013-01-19
    • 2016-01-17
    • 2020-05-21
    • 1970-01-01
    相关资源
    最近更新 更多