Freigeben über


CallWndProc-Rückruffunktion

Eine anwendungsdefinierte oder bibliotheksdefinierte Rückruffunktion, die mit der SetWindowsHookExA-Funktion/SetWindowsHookExW verwendet wird . Das System ruft diese Funktion auf, bevor die Fensterprozedur aufgerufen wird, um eine an den Thread gesendete Nachricht zu verarbeiten.

Der HOOKPROC-Typ definiert einen Zeiger auf diese Rückruffunktion. CallWndProc ist ein Platzhalter für den anwendungsdefinierte oder bibliotheksdefinierte Funktionsnamen.

Syntax

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

Parameter

  • nCode [in]
    Typ: int

    Gibt an, ob die Hookprozedur die Nachricht verarbeiten muss. Wenn nCodeHC_ACTION ist, muss die Hookprozedur die Nachricht verarbeiten. Wenn nCode kleiner als 0 ist, muss die Hookprozedur die Nachricht ohne weitere Verarbeitung an die CallNextHookEx-Funktion übergeben und den von CallNextHookEx zurückgegebenen Wert zurückgeben.

  • wParam [in]
    Typ: WPARAM

    Gibt an, ob die Nachricht vom aktuellen Thread gesendet wurde. Wenn die Nachricht vom aktuellen Thread gesendet wurde, ist sie nonzero; andernfalls ist es 0.

  • lParam [in]
    Typ: LPARAM

    Ein Zeiger auf eine CWPSTRUCT-Struktur , die Details zur Nachricht enthält.

Rückgabewert

Typ:****

Typ: LRESULT

Wenn nCode kleiner als 0 ist, muss die Hookprozedur den von CallNextHookEx zurückgegebenen Wert zurückgeben.

Wenn nCode größer oder gleich 0 ist, wird dringend empfohlen, CallNextHookEx aufzurufen und den zurückgegebenen Wert zurückzugeben. Andernfalls erhalten andere Anwendungen, die WH_CALLWNDPROC Hooks installiert haben, keine Hookbenachrichtigungen und verhalten sich daher möglicherweise falsch. Wenn die Hookprozedur CallNextHookEx nicht aufruft, sollte der Rückgabewert 0 sein.

Hinweise

Die CallWndProc-Hookprozedur kann die Nachricht untersuchen, aber nicht ändern. Nachdem die Hookprozedur die Steuerung an das System zurückgegeben hat, wird die Meldung an die Fensterprozedur übergeben.

Eine Anwendung installiert die Hookprozedur, indem sie den WH_CALLWNDPROC Hooktyp und einen Zeiger auf die Hookprozedur in einem Aufruf der SetWindowsHookExA/SetWindowsHookExW-Funktion angibt.

Anforderungen

Unterstützte Mindestversion (Client)

Windows 2000 Professional [nur Desktop-Apps]

Unterstützte Mindestversion (Server)

Windows 2000 Server [nur Desktop-Apps]

Header

Winuser.h (einschließlich Windows.h)

Siehe auch

CallNextHookEx

CWPSTRUCT

SendMessage

SetWindowsHookExA/SetWindowsHookExW

Hooks