Funzione BroadcastSystemMessage (winuser.h)
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 funzione BroadcastSystemMessageEx .
Sintassi
long BroadcastSystemMessage(
[in] DWORD flags,
[in, out, optional] LPDWORD lpInfo,
[in] UINT Msg,
[in] WPARAM wParam,
[in] LPARAM lParam
);
Parametri
[in] flags
Tipo: DWORD
Opzione di trasmissione. Questo parametro può essere uno o più dei valori seguenti.
Valore | Significato |
---|---|
|
Consente al destinatario di impostare la finestra in primo piano durante l'elaborazione del messaggio. |
|
Scarica il disco dopo che ogni destinatario elabora il messaggio. |
|
Continua a trasmettere il messaggio, anche se il periodo di timeout trascorso o uno dei destinatari non risponde. |
|
Non invia il messaggio alle finestre che appartengono all'attività corrente. Ciò impedisce a un'applicazione di ricevere il proprio messaggio. |
|
Forza il timeout di un'applicazione non rispondente. Se uno dei destinatari non esegue il timeout, non continuare a trasmettere il messaggio. |
|
Attende una risposta al messaggio, purché il destinatario non sia in grado di rispondere. Non timeout. |
|
Invia il messaggio. Non usare in combinazione con BSF_QUERY. |
|
Invia il messaggio a un destinatario alla volta, inviando a un destinatario successivo solo se il destinatario corrente restituisce TRUE. |
|
Invia il messaggio usando la funzione SendNotifyMessage . Non usare in combinazione con BSF_QUERY. |
[in, out, optional] lpInfo
Tipo: LPDWORD
Puntatore a una variabile contenente e riceve informazioni sui destinatari del messaggio.
Quando la funzione restituisce, questa variabile riceve una combinazione di questi valori che identificano i destinatari che hanno effettivamente ricevuto il messaggio.
Se questo parametro è NULL, la funzione trasmette a tutti i componenti.
Questo parametro può essere uno o più dei valori seguenti.
Valore | Significato |
---|---|
|
Trasmettere a tutti i componenti di sistema. |
|
Trasmettere a tutti i desktop. Richiede il privilegio SE_TCB_NAME . |
|
Trasmettere alle applicazioni. |
[in] Msg
Tipo: UINT
Messaggio da inviare.
Per elenchi dei messaggi forniti dal sistema, vedere Messaggi definiti dal sistema.
[in] wParam
Tipo: WPARAM
Ulteriori informazioni specifiche del messaggio.
[in] lParam
Tipo: LPARAM
Ulteriori informazioni specifiche del messaggio.
Valore restituito
Tipo: long
Se la funzione ha esito positivo, il valore restituito è un valore positivo.
Se la funzione non è in grado di trasmettere il messaggio, il valore restituito è -1.
Se il parametro dwFlags è BSF_QUERY e almeno un destinatario ha restituito BROADCAST_QUERY_DENY al messaggio corrispondente, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
Se BSF_QUERY non è specificato, la funzione invia il messaggio specificato a tutti i destinatari richiesti, ignorando i valori restituiti da tali destinatari.
Il sistema esegue solo il marshalling per i messaggi di sistema (quelli inclusi nell'intervallo da 0 a (WM_USER-1)). Per inviare altri messaggi (quelli >= WM_USER) a un altro processo, è necessario eseguire il marshalling personalizzato.
Esempio
Per un esempio, vedere Terminazione di un processo.
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winuser.h (include Windows.h) |
Libreria | User32.lib |
DLL | User32.dll |
Vedi anche
Informazioni concettuali
Riferimento