【发布时间】:2014-04-09 11:13:18
【问题描述】:
是否有一种方法可以设置监听器/观察器以了解不相关的应用程序窗口何时关闭?
我可以检查窗口是否仍然打开,但继续这样做似乎很愚蠢。
【问题讨论】:
-
如果其他应用不是您的,您可能需要一个系统范围的 CBT 挂钩。
-
是的,你是对的,这不是我的申请。谢谢
是否有一种方法可以设置监听器/观察器以了解不相关的应用程序窗口何时关闭?
我可以检查窗口是否仍然打开,但继续这样做似乎很愚蠢。
【问题讨论】:
你可以:
HWND 有效性(尤其是如果您不需要计时精度)WM_DESTROY,然后将通知转发到您的应用程序【讨论】:
HWNDs 被重用。检查HWND 的有效性并不能回答在检索时具有特定HWND 的窗口是否仍然存在的问题。
HWND值有效性的API在这里,简单明了,有时可以接受错误的机会,更喜欢简单。
可访问性 API 的 SetWinEventHook 过滤 EVENT_OBJECT_DESTROY。
这是基于通知的,因此没有轮询,并且与 CBT 挂钩不同,它不需要注入。
【讨论】: