【问题标题】:Why GetProcesses() doesn't show all of running processes为什么 GetProcesses() 不显示所有正在运行的进程
【发布时间】:2019-10-26 17:07:49
【问题描述】:

当我运行以下代码时,我希望获得系统中运行的所有进程的名称,但在我以外的其他一些 PC 中,有一个正在运行的进程在 TaskManager 中可见,但我的应用程序没有显示它,我想知道我是否做错了什么或者有什么办法可以解决这个问题,顺便说一句,我的应用程序是以管理员身份运行的,所以这不是问题。感谢您的帮助。

foreach(Process Proc in Process.GetProcesses()) {
    T += Proc.ProcessName + ", ";
}

【问题讨论】:

标签: c# winforms taskmanager


【解决方案1】:

可以在服务主机进程 (svchost.exe) 的同一实例中加载多个操作系统服务。 GetProcesses 不识别那些单独的服务;为此,请使用GetServices。请务必阅读official docs

【讨论】:

    【解决方案2】:

    Process.GetProcesses() 不返回系统进程。服务也可能显示为 svhost.exe。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-09
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多