winapi - SetWindowsHookEx() 设置的钩子按什么顺序接收消息?
问题描述
如果应用程序 A 调用 SetWindowsHookEx() 来插入一个低级鼠标钩子 (WH_MOUSE_LL),然后应用程序 B 也这样做,那么哪个会先收到消息?
解决方案
该行为记录在Hooks Overview下:
SetWindowsHookEx函数总是在钩子链的开头安装一个钩子过程。当某个特定类型的钩子监视的事件发生时,系统会在与该钩子关联的钩子链的开头调用该过程。链中的每个钩子过程确定是否将事件传递给下一个过程。挂钩过程通过调用CallNextHookEx函数将事件传递给下一个过程。
在您的示例中,钩子 B 将首先收到消息,因为它是最近安装的。
推荐阅读
- ios - 使用 swift 在 Flutter App 中集成 ARKit
- java - Android Volley 发出帖子请求
- jquery - 将菜单链接 url 更改为 #
- mysql - 获取产品数量,不包括 sql 中该产品的最大值
- python - 试图将 django-oscar 产品传递给自定义模板
- python - 使用熊猫绘图时如何消除相对偏移?
- reactjs - reduxform - 如何使用单个 handleChange 函数处理单选按钮上的更改
- jquery - 使用 JQuery 禁用页面滚动
- javascript - 反应分页选择切换类名
- angular - 将 Angular 4 升级到 7 http 到 httpclient