我注意到,如果您针对属于不在前台的窗口(即最小化)的hWnd调用FindWindowEx
或EnumChildWindows
,则他们不会报告任何子项。另一方面,如果我首先针对我正在查询的窗口调用SetForegroundWindow
,在FindWindowEx
或EnumChildWindows
之后,他们会报告所有孩子。即使我感兴趣的窗口不在前台,下一次调用也会报告所有孩子。它几乎是在第一次通话后进行某种缓存?
答案 0 :(得分:0)
这是您自己的应用程序中的窗口,还是您正在调查第三方应用程序的功能?
我猜测应用程序只在第一次进入前台时才创建子窗口;这可以解释你所看到的行为。据我所知,EnumChildWindows
不执行任何缓存。