ForegroundIdleProc 回调函数

SetWindowsHookExA SetWindowsHookExW函数一起使用的应用程序定义的或库定义的回调函数。/ 每当前台线程即将变为空闲时,系统就会调用此函数。

语法

DWORD CALLBACK ForegroundIdleProc(
  _In_ int   code,
       DWORD wParam,
       LONG  lParam
);

参数

  • 代码 [in]
    类型: int

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

  • wParam
    类型:DWORD

    未使用此参数。

  • lParam
    类型: LONG

    未使用此参数。

返回值

类型:****

类型:DWORD

如果 代码 小于零,则挂钩过程必须返回 CallNextHookEx 返回的值。

如果 代码 大于或等于零,强烈建议调用 CallNextHookEx 并返回它返回的值;否则,已安装 WH_FOREGROUNDIDLE 挂钩的其他应用程序将不会收到挂钩通知,并可能因此行为不正确。 如果挂钩过程不调用 CallNextHookEx,则返回值应为零。

注解

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

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

处理此回调函数时,请避免调用任何从调用线程的消息队列中检索窗口消息的函数。 这包括 GetMessagePeekMessageA/PeekMessageW、模式对话框和 COM 函数。 当调用线程的消息队列中有消息时,调用此类函数可能会导致线程无法从 GetMessageWaitMessage 返回。

要求

最低受支持的客户端

Windows 2000 Professional [仅限桌面应用]

最低受支持的服务器

Windows 2000 Server [仅限桌面应用]

标头

Winuser.h(包括 Windows.h)

另请参阅

引用

CallNextHookEx

SetWindowsHookExA/SetWindowsHookExW

概念性

挂钩