CallWndProc 回呼函式

SetWindowsHookExA/SetWindowsHookExW函式搭配使用的應用程式定義或程式庫定義回呼函式。 系統會先呼叫此函式,再呼叫視窗程式來處理傳送至執行緒的訊息。

HOOKPROC類型會定義這個回呼函式的指標。 CallWndProc 是應用程式定義或程式庫定義函數名稱的預留位置。

語法

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

參數

  • nCode [in]
    類型: int

    指定攔截程式是否必須處理訊息。 如果 nCodeHC_ACTION,攔截程式必須處理訊息。 如果 nCode 小於零,攔截程式必須將訊息傳遞至 CallNextHookEx 函式,而不需進一步處理,而且必須傳回 CallNextHookEx傳回的值。

  • wParam [in]
    類型: WPARAM

    指定訊息是否由目前線程傳送。 如果訊息是由目前線程傳送,則為非零;否則為零。

  • lParam [in]
    類型: LPARAM

    CWPSTRUCT結構的指標,其中包含訊息的詳細資料。

傳回值

類型:****

類型:LRESULT

如果 nCode 小於零,攔截程式必須傳回 CallNextHookEx傳回的值。

如果 nCode 大於或等於零,強烈建議您呼叫 CallNextHookEx 並傳回其傳回的值;否則,已安裝 WH_CALLWNDPROC 勾點的其他應用程式將不會收到勾點通知,因此的行為可能會不正確。 如果攔截程式未呼叫 CallNextHookEx,則傳回值應該是零。

備註

CallWndProc攔截程式可以檢查訊息,但無法加以修改。 攔截程式將控制權傳回系統之後,訊息會傳遞至視窗程式。

應用程式會在呼叫SetWindowsHookExA/SetWindowsHookExW函式時指定WH_CALLWNDPROC勾點類型和攔截程式的指標,以安裝攔截程式。

規格需求

最低支援的用戶端

Windows 2000 Professional [僅限傳統型應用程式]

最低支援的伺服器

Windows 2000 Server [僅限桌面應用程式]

標頭

Winuser.h (包括 Windows.h)

另請參閱

CallNextHookEx

CWPSTRUCT

SendMessage

SetWindowsHookExA/SetWindowsHookExW

勾點