在第一次调用FindWindowEx / EnumChildWindows后是否缓存了控制树?

时间:2010-04-04 07:17:23

标签: c++ windows user-interface winapi windowing

我注意到,如果您针对属于不在前台的窗口(即最小化)的hWnd调用FindWindowExEnumChildWindows,则他们不会报告任何子项。另一方面,如果我首先针对我正在查询的窗口调用SetForegroundWindow,在FindWindowExEnumChildWindows之后,他们会报告所有孩子。即使我感兴趣的窗口不在前台,下一次调用也会报告所有孩子。它几乎是在第一次通话后进行某种缓存?

1 个答案:

答案 0 :(得分:0)

这是您自己的应用程序中的窗口,还是您正在调查第三方应用程序的功能?

我猜测应用程序只在第一次进入前台时才创建子窗口;这可以解释你所看到的行为。据我所知,EnumChildWindows不执行任何缓存。