DebugProc 函数

SetWindowsHookExA SetWindowsHookExW函数一起使用的应用程序定义或库定义的回调函数。/ 在调用与任何类型的挂钩关联的挂钩过程之前,系统将调用此函数。 系统将有关要调用的挂钩的信息传递给 DebugProc 挂钩过程,该过程检查信息并确定是否允许调用挂钩。

HOOKPROC 类型定义指向此回调函数的指针。 DebugProc 是应用程序定义或库定义的函数名称的占位符。

语法

LRESULT CALLBACK DebugProc(
  _In_ int    nCode,
  _In_ WPARAM wParam,
  _In_ LPARAM lParam
);

参数

  • nCode [in]
    类型: int

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

  • wParam [in]
    类型:WPARAM

    即将调用的挂钩类型。 此参数的取值可为下列值之一:

    含义
    WH_CALLWNDPROC 4

    安装用于监视发送到窗口过程的消息的挂钩过程。 有关详细信息,请参阅 [*CallWndProc*] (callwndproc.md) 挂钩过程的说明。

    WH_CALLWNDPROCRET 12

    安装一个挂钩过程,用于监视刚刚由窗口过程处理的消息。 有关详细信息,请参阅 CallWndRetProc 挂钩过程的说明。

    WH_CBT 5

    安装用于接收对 CBT 应用程序有用的通知的挂钩过程。 有关详细信息,请参阅 [**CBTProc**] (cbtproc.md) 挂钩过程的说明。

    WH_DEBUG 9

    安装可用于调试其他挂钩过程的挂钩过程。 有关详细信息,请参阅 DebugProc 挂钩过程的说明。

    WH_GETMESSAGE 3

    安装用于监视发布到消息队列的消息的挂钩过程。 有关详细信息,请参阅GetMsgProc 挂钩过程的说明。

    WH_JOURNALPLAYBACK 1

    安装一个挂钩过程,该过程发布以前由 WH_JOURNALRECORD 挂钩过程记录的消息。 有关详细信息,请参阅 JournalPlaybackProc 挂钩过程的说明。

    WH_JOURNALRECORD 0

    安装一个挂钩过程,用于记录发布到系统消息队列的输入消息。 此挂钩可用于记录宏。 有关详细信息,请参阅 JournalRecordProc 挂钩过程的说明。

    WH_KEYBOARD 2

    安装用于监视击键消息的挂钩过程。 有关详细信息,请参阅 KeyboardProc 挂钩过程的说明。

    WH_MOUSE 7

    安装监视鼠标消息的挂钩过程。 有关详细信息,请参阅 [*MouseProc*] (mouseproc.md) 挂钩过程的说明。

    WH_MSGFILTER -1

    安装挂钩过程,用于监视由于对话框、消息框、菜单或滚动条中的输入事件而生成的消息。 挂钩过程仅监视安装了挂钩过程的应用程序的这些消息。 有关详细信息,请参阅 [*MessageProc*] (messageproc.md) 挂钩过程。

    WH_SHELL 10

    安装用于接收对 Shell 应用程序有用的通知的挂钩过程。 有关详细信息,请参阅 [*ShellProc*] (shellproc.md) 挂钩过程的说明和 WH_SHELL 挂钩部分。

    WH_SYSMSGFILTER 6

    安装挂钩过程,用于监视由于对话框、消息框、菜单或滚动条中的输入事件而生成的消息。 挂钩过程监视系统中所有应用程序的这些消息。 有关详细信息,请参阅 [*SysMsgProc*] (sysmsgproc.md) 挂钩过程的说明。

     
    • lParam [in]
      类型:LPARAM

      指向 DEBUGHOOKINFO 结构的指针,该结构包含要传递给目标挂钩过程的参数。

    返回值

    类型:****

    类型:LRESULT

    若要防止系统调用挂钩,挂钩过程必须返回非零值。 否则,挂钩过程必须调用 CallNextHookEx

    注解

    应用程序通过在调用 SetWindowsHookExA/ SetWindowsHookExW 函数中指定WH_DEBUG挂钩类型和指向挂钩过程的指针来安装此挂钩过程。

    要求

    最低受支持的客户端

    Windows 2000 Professional [仅限桌面应用]

    最低受支持的服务器

    Windows 2000 Server [仅限桌面应用]

    标头

    Winuser.h(包括 Windows.h)

    另请参阅

    CallNextHookEx

    CallWndProc

    CallWndRetProc

    CBTProc

    DEBUGHOOKINFO

    GetMsgProc

    JournalPlaybackProc

    JournalRecordProc

    KeyboardProc

    MessageProc

    MouseProc

    SetWindowsHookExA/SetWindowsHookExW

    ShellProc

    SysMsgProc

    挂钩