CallMsgFilter函数将指定的消息和挂钩代码传递给与WH_SYSMSGFILTER和WH_MSGFILTER钩子相关联的钩子过程。WH_SYSMSGFILTER或WH_MSGFILTER挂钩过程是一个应用程序定义的回调函数,用于检查和(可选)修改对话框,消息框,菜单或滚动条的消息。
BOOL CallMsgFilter(
LPMSG 【LPMSG】, | //指向具有消息数据的结构的指针 |
INT 【NCODE】 | //钩子代码 |
); |
参数
【LPMSG】
指向MSG结构的指针,其中包含要传递给挂钩过程的消息。
【NCODE】
指定钩子过程使用的应用程序定义代码来确定如何处理消息。代码不能与与WH_SYSMSGFILTER和WH_MSGFILTER钩子相关联的系统定义的钩子代码(MSGF_和HC_)具有相同的值。
返回值
如果应用程序进一步处理消息,返回值为零。
如果应用程序不应该进一步处理消息,则返回值不为零。
备注
Windows调用CallMsgFilter,以使应用程序能够在对话框,消息框,菜单和滚动条的内部处理期间或用户通过按ALT + TAB组合键激活其他窗口时检查和控制消息流。
应用程序使用SetWindowsHookEx功能安装挂接过程。
也可以看看