【发布时间】:2011-11-14 14:55:27
【问题描述】:
我正在使用游戏 API。它为我创建了窗口,但有一些消息我想做一些事情。例如,当屏幕调整大小时,我想显示一个黑屏。本质上,我有我的主窗口的 HWND 并且想收听消息并让它们在处理之前或之后通过我的自定义 WndProc,我只想知道窗口何时收到 WM_SIZE 之类的消息。
有这方面的 API 吗?
谢谢
【问题讨论】:
-
这可能是
SetWindowsHookEx的工作
我正在使用游戏 API。它为我创建了窗口,但有一些消息我想做一些事情。例如,当屏幕调整大小时,我想显示一个黑屏。本质上,我有我的主窗口的 HWND 并且想收听消息并让它们在处理之前或之后通过我的自定义 WndProc,我只想知道窗口何时收到 WM_SIZE 之类的消息。
有这方面的 API 吗?
谢谢
【问题讨论】:
SetWindowsHookEx的工作
如果您与要拦截 WM_SIZE 的窗口处于同一进程中,您可以简单地将 WndProc 替换为 SetWindowLongPtr 和 GWLP_WNDPROC。请注意,您必须将其他消息传递给原始 WndProc。
但是,如果你在不同的进程中,那么你需要找到一种使用钩子的方法,例如SetWindowsHookEx
【讨论】: