Condividi tramite


Funzione CallMsgFilterA (winuser.h)

Passa il messaggio e il codice hook specificati alle procedure hook associate ai WH_SYSMSGFILTER e WH_MSGFILTER hook. Una WH_SYSMSGFILTER o WH_MSGFILTER routine hook è una funzione di callback definita dall'applicazione che esamina e, facoltativamente, modifica i messaggi per una finestra di dialogo, una finestra di messaggio, un menu o una barra di scorrimento.

Sintassi

BOOL CallMsgFilterA(
  [in] LPMSG lpMsg,
  [in] int   nCode
);

Parametri

[in] lpMsg

Tipo: LPMSG

Puntatore a una struttura MSG che contiene il messaggio da passare alle procedure hook.

[in] nCode

Tipo: int

Codice definito dall'applicazione utilizzato dalla routine hook per determinare come elaborare il messaggio. Il codice non deve avere lo stesso valore dei codici hook definiti dal sistema (MSGF_ e HC_) associati ai WH_SYSMSGFILTER e WH_MSGFILTER hook.

Valore restituito

Tipo: bool

Se l'applicazione deve elaborare ulteriormente il messaggio, il valore restituito è zero.

Se l'applicazione non deve elaborare ulteriormente il messaggio, il valore restituito è diverso da zero.

Osservazioni

Il sistema chiama CallMsgFilter per consentire alle applicazioni di esaminare e controllare il flusso dei messaggi durante l'elaborazione interna di finestre di dialogo, finestre di messaggio, menu e barre di scorrimento oppure quando l'utente attiva una finestra diversa premendo la combinazione di tasti ALT+TAB.

Installare questa procedura hook usando la funzione SetWindowsHookEx.

Esempi

Per un esempio, vedere WH_MSGFILTER e WH_SYSMSGFILTER hook.

Nota

L'intestazione winuser.h definisce CallMsgFilter 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-message-l1-1-0 (introdotto in Windows 8)

Vedere anche

concettuale

hook

MSG

MessageProc

riferimento

SetWindowsHookEx

SysMsgProc