Funzione di callback CallWndProc

Funzione di callback definita dall'applicazione o definita dalla libreria usata con la funzione SetWindowsHookExA/SetWindowsHookExW . Il sistema chiama questa funzione prima di chiamare la routine window per elaborare un messaggio inviato al thread.

Il tipo HOOKPROC definisce un puntatore a questa funzione di callback. CallWndProc è un segnaposto per il nome della funzione definita dall'applicazione o definita dalla libreria.

Sintassi

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

Parametri

  • nCode [in]
    Tipo: int

    Specifica se la routine hook deve elaborare il messaggio. Se nCode è HC_ACTION, la routine hook deve elaborare il messaggio. Se nCode è minore di zero, la routine hook deve passare il messaggio alla funzione CallNextHookEx senza ulteriori elaborazioni e deve restituire il valore restituito da CallNextHookEx.

  • wParam [in]
    Tipo: WPARAM

    Specifica se il messaggio è stato inviato dal thread corrente. Se il messaggio è stato inviato dal thread corrente, è diverso da zero; in caso contrario, è zero.

  • lParam [in]
    Tipo: LPARAM

    Puntatore a una struttura CWPSTRUCT che contiene dettagli sul messaggio.

Valore restituito

Digitare:****

Tipo: LRESULT

Se nCode è minore di zero, la routine hook deve restituire il valore restituito da CallNextHookEx.

Se nCode è maggiore o uguale a zero, è consigliabile chiamare CallNextHookEx e restituire il valore restituito; in caso contrario, altre applicazioni che hanno installato WH_CALLWNDPROC hook non riceveranno notifiche hook e potrebbero comportarsi in modo non corretto di conseguenza. Se la routine hook non chiama CallNextHookEx, il valore restituito deve essere zero.

Commenti

La routine hook CallWndProc può esaminare il messaggio, ma non modificarlo. Dopo che la routine hook restituisce il controllo al sistema, il messaggio viene passato alla routine della finestra.

Un'applicazione installa la routine hook specificando il tipo di hook WH_CALLWNDPROC e un puntatore alla routine hook in una chiamata alla funzione SetWindowsHookExA/SetWindowsHookExW .

Requisiti

Client minimo supportato

Windows 2000 Professional [solo app desktop]

Server minimo supportato

Windows 2000 Server [solo app desktop]

Intestazione

Winuser.h (include Windows.h)

Vedi anche

CallNextHookEx

CWPSTRUCT

SendMessage

SetWindowsHookExA/SetWindowsHookExW

Hook