gpt4 book ai didi

c# - 如何获取进程 “type”(应用程序,后台进程或Windows进程)

转载 作者:行者123 更新时间:2023-12-03 11:06:25 25 4
gpt4 key购买 nike

我正在尝试获取类型为“app”(而不是“Background Process”或“Windows Process”)的所有进程的列表。

不幸的是,尽管我知道...

var processList = Process.GetProcesses();

会为我提供系统上运行的所有进程的列表,但我对如何获取进程的“类型”一无所知。 'Process'确实具有方法'GetType',但它似乎未指向我所指的“类型”,而TaskManager在上图中所指。

有谁知道如何获得任务管理器称为给定进程的变量中的“类型”的值?

注意:C#。

最佳答案

我找不到确切的答案,但是我找到了对我有帮助的东西。您需要使用类的 MainWindowHandle 属性。

var processes = Process.GetProcesses().Where(pr => pr.MainWindowHandle != IntPtr.Zero);

foreach (Process proc in processes)
Console.WriteLine(proc.ProcessName);

警告

如果您尝试获取 proc.MainModule.FileName ,则可能会看到Win32Exception异常。为避免此问题,我将项目编译为x64(您的项目->属性->构建->平台目标-> x64)。

关于c# - 如何获取进程 “type”(应用程序,后台进程或Windows进程),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27086816/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com