如何获取所有 运行 个 GUI 应用程序的列表?

How to get a list of all running GUI apps?

我想知道是否可以使用 python.

列出 Windows 上的所有 GUI 应用程序 运行

我一直在做一些研究,人们建议使用 psutil,它看起来还不错,但是,它列出了 所有 个活动的 进程,我无法找到有关如何仅保留与活动 GUI 应用程序(例如,Firefox、Chrome、Skype、Discord 等)关联的进程的任何资源).

有什么办法吗?也许不使用 Python(尽管那会很棒),也许通过一些 C++?获取进程的PID就足够了。

编辑:感谢 chrisbyte 和 Vijaye Raji,win32guiEnumWindows 正是我要找的。

对于 GUI 进程,我假设您指的是附加了 window 的进程。您需要的是 EnumWindows API which with a callback, and within the callback, you could use GetWindowThreadProcessId 来获取每个 window.

的进程 ID

这是一个足够接近的答案,可以让你继续: