Виталий Asked:2020-12-06 22:26:01 +0000 UTC2020-12-06 22:26:01 +0000 UTC 2020-12-06 22:26:01 +0000 UTC 仅获取任务栏上显示的进程 772 现在我使用这种方法来获取所有进程: Process[] processes = GetAllProcesses(); 如何仅获取任务栏上显示的那些进程? c# 1 个回答 Voted Best Answer A K 2020-12-06T23:48:45Z2020-12-06T23:48:45Z 据我所知,可以通过从列表中过滤掉 MainWindowHandle 大于零的那些进程来获得这些进程: Process[] processes = System.Diagnostics.Process.GetProcesses(); var apps = processes.Where(x => x.MainWindowHandle != IntPtr.Zero); 原则上,通过检查 Handle != null 可以获得相同的结果,但如果您在没有管理员权限的帐户下运行,则会收到有关缺少权限的错误。 跑步时我注意到了。出于某种原因,Outlook 通知(在任务栏上弹出)不会显示在任务列表中,尽管它们即使在任务栏上也是可见的。你需要这样的通知吗?
据我所知,可以通过从列表中过滤掉 MainWindowHandle 大于零的那些进程来获得这些进程:
原则上,通过检查 Handle != null 可以获得相同的结果,但如果您在没有管理员权限的帐户下运行,则会收到有关缺少权限的错误。
跑步时我注意到了。出于某种原因,Outlook 通知(在任务栏上弹出)不会显示在任务列表中,尽管它们即使在任务栏上也是可见的。你需要这样的通知吗?