我的目标是在另一个进程的窗口中禁用一些类似于工具提示的内容。如果鼠标移动的坐标在窗口的特定矩形内,我的想法是阻止WM_MOUSEMOVE
。
我可以使用SetWindowsHookEx
接收该消息(WH_CALLWNDPROC
和WH_GETMESSAGE
),但是不允许阻止它们。我可以返回1而不是调用CallNextHookEx
,但这不会阻止window的WndProc接收消息。但是,这种方法可用于阻止MOUSE_LL / KEYBOARD_LL中的事件。
SetWindowsHookEx
也不是很好,因为它会将钩子安装到系统中所有窗口上。
如何防止其他进程的窗口接收某些Windows消息?
答案 0 :(得分:2)
WH_GETMESSAGE
消息挂钩不允许您“阻止”或取消该消息,但可以对其进行修改。因此,只需将lpMsg->message
更改为WM_NULL
,以防止目标窗口处理鼠标移动消息。