我已经成功地安装一个WH_GETMESSAGE
带有钩SetWindowsHookEx
,我可以看到的WM_POINTERDOWN
,WM_POINTERUP
等应用程序接收消息.(它是在Windows 8.1上运行的32位桌面应用程序.)
现在,我不仅希望看到这些消息,而且还想删除其中一些消息.
GetMsgProc的文档说:
GetMsgProc挂钩过程可以检查或修改消息.在钩子过程将控制权返回给系统之后,GetMessage或PeekMessage函数将消息以及任何修改返回给最初调用它的应用程序.
有了WM_KEYUP
消息,这似乎工作正常.我可以将消息设置为WM_NULL
挂钩,并且键事件将消失.
WM_POINTER...
但是,对于消息,这似乎不起作用.应用程序仍然接收消息(在调试器中验证).
也许有其他方法来过滤/删除此类消息?
编辑:它必须使用未修改的第三方应用程序(因此使用钩子).
更新:我设法通过积极调用PeekMessage
钩子来阻止点击事件(从长远来看可能不是一个好主意).但是,我仍然无法阻止通过触摸滚动.