如何判断“窗口句柄”是否为主窗口句柄?

时间:2020-07-07 03:25:15

标签: winapi

你好你好谢谢你阅读我的问题。

我目前正在构建一个程序,用于检测新窗口的创建/终止。

非常感谢,我成功地实现了WinEvents和SetWinEventHook来捕获事件并过滤窗口的创建和终止。

但是,我面临着一项艰巨的任务,即要正确过滤正确的Window句柄。

例如,当putty.exe运行时,我的函数会捕获许多句柄,包括主句柄,按钮句柄等。

但是,我只希望过滤主窗口句柄。

因此,我使用if语句如下。

if (event == EVENT_OBJECT_CREATE && GetParent(hwnd)==NULL)

这似乎工作了一段时间。

但是,此if语句阻止我的程序捕获子窗口的主句柄。

有什么办法可以确定窗口句柄(HWND)是否属于主窗口?

我的同事告诉我实现GetWindowLong并比较样式。

但是,我对此一无所知。

如果有人知道答案,请提供帮助。

再次感谢您阅读此问题。

0 个答案:

没有答案