为了账号安全,请及时绑定邮箱和手机立即绑定

如何使用 WIN32 API 枚举窗口?

如何使用 WIN32 API 枚举窗口?

喵喔喔 2019-05-23 15:11:57
如何使用 WIN32 API 枚举窗口
查看完整描述

3 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

枚举顶层(top-level)窗口
枚举桌面顶层窗口相对于枚举进程来说可能要容易一些。枚举桌面顶层窗口的方法是用 EnumWindows() 函数。不要用 GetWindow()来创建窗口列表,因为窗口之间复杂的父子及同胞关系(Z-Order)容易造成混乱而使得枚举结果不准确。
EnumWindows()有两个参数,一个是指向回调函数的指针,一个是用户定义的 LPARAM 值, 针对每个桌面窗口(或者顶层窗口)它调用回调函数一次。然后回调函数用该窗口句柄做一些处理,比如将它添加到列表中。这个方法保证枚举结果不会被窗口复杂的层次关系搞乱,因此,一旦有了窗口句柄,我们就可以通过 GetWindowText() 得到窗口标题。

查看完整回答
反对 回复 2019-05-25
  • 3 回答
  • 0 关注
  • 869 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信