Funzione CallWindowProcA (winuser.h)
Passa le informazioni sul messaggio alla routine della finestra specificata.
Sintassi
LRESULT CallWindowProcA(
[in] WNDPROC lpPrevWndFunc,
[in] HWND hWnd,
[in] UINT Msg,
[in] WPARAM wParam,
[in] LPARAM lParam
);
Parametri
[in] lpPrevWndFunc
Tipo: WNDPROC
Procedura della finestra precedente. Se questo valore viene ottenuto chiamando la funzione GetWindowLong
[in] hWnd
Tipo: HWND
Handle della routine della finestra per ricevere il messaggio.
[in] Msg
Tipo: UINT
Messaggio.
[in] wParam
Tipo: WPARAM
Informazioni aggiuntive specifiche del messaggio. Il contenuto di questo parametro dipende dal valore del parametro msg.
[in] lParam
Tipo: LPARAM
Informazioni aggiuntive specifiche del messaggio. Il contenuto di questo parametro dipende dal valore del parametro msg.
Valore restituito
Tipo: LRESULT
Il valore restituito specifica il risultato dell'elaborazione del messaggio e dipende dal messaggio inviato.
Osservazioni
Usare la funzione CallWindowProc
La funzione SetWindowLong crea la sottoclasse modificando la routine della finestra associata a una determinata finestra, causando al sistema di chiamare la nuova routine della finestra anziché quella precedente. Un'applicazione deve passare tutti i messaggi non elaborati dalla nuova routine finestra alla routine finestra precedente chiamando CallWindowProc. Ciò consente all'applicazione di creare una catena di routine finestra.
Se viene definito
LRESULT (CALLBACK* WNDPROC) (HWND, UINT, WPARAM, LPARAM);
Se
int (FAR WINAPI * FARPROC) ()
In C, la dichiarazione FARPROC
#ifdef STRICT
WNDPROC MyWindowProcedure
#else
FARPROC MyWindowProcedure
#endif
...
lResult = CallWindowProc(MyWindowProcedure, ...) ;
Per altre informazioni sulle funzioni dichiarate con elenchi di argomenti vuoti, vedere Linguaggio di programmazione C++, Second Edition, di Bjarne Stroustrup.
La funzione CallWindowProc
Esempi
Per un esempio, vedere Sottoclasse di una finestra
Nota
L'intestazione winuser.h definisce CallWindowProc come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 2000 Professional [solo app desktop] |
server minimo supportato | Windows 2000 Server [solo app desktop] |
piattaforma di destinazione | Finestre |
intestazione |
winuser.h (include Windows.h) |
libreria |
User32.lib |
dll | User32.dll |
set di API | ext-ms-win-ntuser-window-l1-1-4 (introdotto in Windows 10, versione 10.0.14393) |
Vedere anche
concettuale
riferimento