使用C#检索完整的进程列表

1 c# windows process

我正在尝试编写一个C#程序来检索完整的进程列表.但是我发现一个应用程序打开一个窗口,但我没有在Windows任务管理器的进程选项卡中看到它,我在任务选项卡中看到它.另外,我也无法使用我的C#代码获取其信息.

static void showProcesses()
{
    Process[] procs = Process.GetProcesses();

    foreach (Process proc in procs)
    {
        Console.WriteLine(proc.ProcessName);
    }
}
Run Code Online (Sandbox Code Playgroud)

我浏览了很多论坛,但我只能找到隐藏进程的方法,而且我找不到任何显示隐藏进程的方法.有谁知道如何检索隐藏的过程信息?

Ric*_*ard 5

Windows上没有隐藏进程.只有您没有(安全)权限才能查看的进程.

以管理员身份运行的进程(在Vista/Win7/Win2k8中需要升级)将始终能够查看所有进程.

但是,列出进程的控制台应用程序可能会在任务管理器的显示刷新之前退出,因此不会被看到.即使将更新速度设置为"高",这也可能是一个简单的程序.

您需要保持流程,直到任务管理器更新其显示.最简单的方法是在Main方法的末尾添加以下语句:

Console.Write("Press ENTER to exit");
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)