1

我想知道 CallNextHookEx 函数的第二个参数(代码)可能采用哪些值,不幸的是 MSDN 文档对该参数非常模糊:

传递给当前钩子过程的钩子代码。下一个钩子过程使用此代码来确定如何处理钩子信息。

我假设 code 参数可能采用的值是在“ Hook Structures ”中的某个地方定义的

如何正确解释这些值?

我是否可以操纵该值,或者我是否应该按照我最初收到的代码传递代码?

4

1 回答 1

0

该值在挂钩过程的文档中进行了说明。

例如GetMsgProc

指定挂钩过程是否必须处理消息。如果 code 是HC_ACTION,则挂钩过程必须处理该消息。如果代码小于零,则挂钩过程必须将消息传递给 CallNextHookEx 函数而不进行进一步处理,并且应该返回 CallNextHookEx 返回的值。

code对于大多数(全部?)过程,该参数的文档与上述类似。

这意味着您应该只处理code等于 的调用HC_ACTION。否则,您应该CallNextHookEx使用原始参数调用,并返回结果。

于 2013-10-06T17:32:42.893 回答