GetForegroundWindow获取的是托管进程ApplicationFrameHost,而不是真正的进程,比如XD软件
作者:互联网
问题描述
最近做一个实时检测系统当前激活进程的软件,Photoshop、PPT、Word都没有问题,但是无法检测到XD软件的进程,返回的仅仅是ApplicationFrameHost进程,经过研究发现:XD软件被进程ApplicationFrameHost托管, 因此GetForegroundWindow()方法返回带有标题的窗口,但不返回托管的实际进程,
解决思路
解决方法是再次通过EnumChildWindows获取ApplicationFrameHost的子窗口句柄,直到获取到实际进程。
代码:
GitHub :https://github.com/qiuxianhu/WinFormGetActiveProcess
CSDN:
标签:GetForegroundWindow,ApplicationFrameHost,托管,XD,进程,软件 来源: https://www.cnblogs.com/qtiger/p/10792160.html