繁体   English   中英

如何确定一个进程是否具有GUI?

[英]How to determine if a process has GUI or not?

如何确定一个进程是否具有响应性的GUI或更确切地说它是一个后台应用程序? 可能需要进行一些API函数调用吗?

(答案不一定涉及API调用)

推断该信息的最接近Windows API调用将是GetGUIThreadInfo 请注意“ 备注”部分中的以下段落:

如果指定的线程存在或没有输入队列 ,则该函数将失败。

具有输入队列的线程可以潜在地拥有窗口。 请注意,创建窗口不需要具有输入队列的线程。 还要注意,非GUI线程可以随时传播到GUI线程。


注意:即使可执行映像指定了运行它们的子系统 (例如CONSOLEWINDOWS ),但这也不能用来区分具有GUI的进程和“后台进程”。 CONSOLE子系统中运行的进程也可以创建GUI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM