Messaggi e code di messaggi
Questa sezione descrive messaggi e code di messaggi e come usarli nelle applicazioni.
In questa sezione
Nome | Descrizione |
---|---|
informazioni su messaggi e code di messaggi | In questa sezione vengono illustrati messaggi e code di messaggi di Windows. |
uso di messaggi e code di messaggi | Gli esempi di codice seguenti illustrano come eseguire le attività seguenti associate a messaggi e code di messaggi di Windows. |
di riferimento ai messaggi | Contiene il riferimento all'API. |
messaggi System-Provided
Per gli elenchi dei messaggi forniti dal sistema, vedere System-Defined Messaggi.
Funzioni di messaggio
Nome | Descrizione |
---|---|
BroadcastSystemMessage | Invia un messaggio ai destinatari specificati. I destinatari possono essere applicazioni, driver installabili, driver di rete, driver di dispositivo a livello di sistema o qualsiasi combinazione di questi componenti di sistema. Per ricevere informazioni aggiuntive se la richiesta è definita, usare la funzioneBroadcastSystemMessageEx. |
BroadcastSystemMessageEx | Invia un messaggio ai destinatari specificati. I destinatari possono essere applicazioni, driver installabili, driver di rete, driver di dispositivo a livello di sistema o qualsiasi combinazione di questi componenti di sistema. Questa funzione è simile a BroadcastSystemMessage ad eccezione del fatto che questa funzione può restituire altre informazioni dai destinatari. |
DispatchMessage | Invia un messaggio a una routine finestra. Viene in genere usato per inviare un messaggio recuperato dalla funzioneGetMessage. |
GetInputState | Determina se nella coda dei messaggi del thread chiamante sono presenti messaggi con il pulsante del mouse o la tastiera. |
GetMessage | Recupera un messaggio dalla coda di messaggi del thread chiamante. La funzione invia messaggi inviati in arrivo fino a quando non è disponibile un messaggio inviato per il recupero. A differenza di GetMessage, la funzionePeekMessagenon attende la pubblicazione di un messaggio prima della restituzione. |
getMessageExtraInfo | Recupera le informazioni aggiuntive sul messaggio per il thread corrente. Informazioni aggiuntive sui messaggi sono un valore definito dall'applicazione o dal driver associato alla coda di messaggi del thread corrente. |
GetMessagePos | Recupera la posizione del cursore per l'ultimo messaggio recuperato dalla funzioneGetMessage. Per determinare la posizione corrente del cursore, usare la funzioneGetCursorPos. |
GetMessageTime | Recupera l'ora del messaggio per l'ultimo messaggio recuperato dalla funzioneGetMessage. Il tempo è un numero intero lungo che specifica il tempo trascorso, in millisecondi, dal momento in cui il sistema è stato avviato al momento in cui è stato creato il messaggio, ovvero inserito nella coda dei messaggi del thread. |
GetQueueStatus | Indica il tipo di messaggi trovati nella coda dei messaggi del thread chiamante. |
InSendMessage | Determina se la routine finestra corrente sta elaborando un messaggio inviato da un altro thread (nello stesso processo o in un processo diverso) da una chiamata alla funzione SendMessage. Per ottenere informazioni aggiuntive sulla modalità di invio del messaggio, usare la funzioneInSendMessageEx. |
InSendMessageEx | Determina se la routine della finestra corrente sta elaborando un messaggio inviato da un altro thread (nello stesso processo o in un processo diverso). |
PeekMessage | Invia messaggi inviati in ingresso, controlla la coda dei messaggi del thread per un messaggio pubblicato e recupera il messaggio (se presente). |
PostMessage | Inserisce un messaggio nella coda di messaggi associata al thread che ha creato la finestra specificata e restituisce senza attendere che il thread elabori il messaggio. Per pubblicare un messaggio nella coda di messaggi associata a un thread, usare la funzionepostThreadMessage. |
PostQuitMessage | Indica al sistema che un thread ha effettuato una richiesta di terminare (uscire). Viene in genere usato in risposta a un messaggio di WM_DESTROY. |
PostThreadMessage | Invia un messaggio alla coda di messaggi del thread specificato. Restituisce senza attendere che il thread elabori il messaggio. |
RegisterWindowMessage | Definisce un nuovo messaggio di finestra che è garantito che sia univoco in tutto il sistema. Il valore del messaggio può essere utilizzato durante l'invio o la pubblicazione di messaggi. |
ReplyMessage | Risponde a un messaggio inviato tramite la funzioneSendMessagesenza restituire il controllo alla funzione che ha chiamato SendMessage. |
SendAsyncProc | Funzione di callback definita dall'applicazione usata con la funzione SendMessageCallback. Il sistema passa il messaggio alla funzione di callback dopo aver passato il messaggio alla routine della finestra di destinazione. Il tipo SENDASYNCPROC definisce un puntatore a questa funzione di callback.
SendAsyncProc è un segnaposto per il nome della funzione definita dall'applicazione. |
SendMessage | Invia il messaggio specificato a una finestra o a una finestra. La funzione SendMessage chiama la routine della finestra per la finestra specificata e non restituisce finché la routine della finestra non ha elaborato il messaggio. Per inviare un messaggio e restituire immediatamente, usare la funzione SendMessageCallback o SendNotifyMessage. Per pubblicare un messaggio nella coda di messaggi di un thread e restituire immediatamente, usare la funzionePostMessageo PostThreadMessage. |
SendMessageCallback | Invia il messaggio specificato a una finestra o a una finestra. Chiama la routine della finestra per la finestra specificata e restituisce immediatamente. Dopo che la routine della finestra elabora il messaggio, il sistema chiama la funzione di callback specificata, passando il risultato dell'elaborazione del messaggio e un valore definito dall'applicazione alla funzione di callback. |
SendMessageTimeout | Invia il messaggio specificato a una di più finestre. |
SendNotifyMessage | Invia il messaggio specificato a una finestra o a una finestra. Se la finestra è stata creata dal thread chiamante, SendNotifyMessage chiama la routine della finestra per la finestra e non restituisce finché la routine della finestra non ha elaborato il messaggio. Se la finestra è stata creata da un thread diverso, SendNotifyMessage passa il messaggio alla routine della finestra e restituisce immediatamente; non attende che la routine della finestra finisca l'elaborazione del messaggio. |
setMessageExtraInfo | Imposta le informazioni aggiuntive sul messaggio per il thread corrente. Informazioni aggiuntive sui messaggi sono un valore definito dall'applicazione o dal driver associato alla coda di messaggi del thread corrente. Un'applicazione può usare la funzioneGetMessageExtraInfoper recuperare informazioni aggiuntive sul messaggio di un thread. |
TranslateMessage | Converte i messaggi di chiave virtuale in messaggi di caratteri. I messaggi di tipo carattere vengono inviati alla coda di messaggi del thread chiamante, per essere letti alla successiva chiamata del thread alla funzioneGetMessageo PeekMessage. |
WaitMessage | Restituisce il controllo ad altri thread quando un thread non contiene altri messaggi nella coda dei messaggi. La funzioneWaitMessagesospende il thread e non restituisce finché non viene inserito un nuovo messaggio nella coda dei messaggi del thread. |
Costanti message
Nome | Descrizione |
---|---|
OCM__BASE | Consente di definire messaggi privati per l'uso da parte delle classi finestra private. |
WM_APP | Usato per definire messaggi privati. |
WM_USER | Consente di definire messaggi privati per l'uso da parte delle classi finestra private. |
Strutture dei messaggi
Nome | Descrizione |
---|---|
BSMINFO | Contiene informazioni su una finestra che ha negato una richiesta da BroadcastSystemMessageEx. |
MSG | Contiene informazioni sul messaggio dalla coda di messaggi di un thread. |