Delen via


Berichten en berichtenwachtrijen

In deze sectie worden berichten en berichtenwachtrijen beschreven en hoe u deze kunt gebruiken in uw toepassingen.

In deze sectie

Naam Beschrijving
over berichten en berichtenwachtrijen In deze sectie worden Windows-berichten en berichtenwachtrijen besproken.
Berichten en berichtenwachtrijen gebruiken In de volgende codevoorbeelden ziet u hoe u de volgende taken uitvoert die zijn gekoppeld aan Windows-berichten en berichtenwachtrijen.
berichtreferentie Bevat de API-verwijzing.

System-Provided berichten

Zie System-Defined Berichtenvoor lijsten met door het systeem geleverde berichten.

Berichtfuncties

Naam Beschrijving
BroadcastSystemMessage- Hiermee wordt een bericht verzonden naar de opgegeven geadresseerden. De ontvangers kunnen toepassingen, installeerbare stuurprogramma's, netwerkstuurprogramma's, apparaatstuurprogramma's op systeemniveau of een combinatie van deze systeemonderdelen zijn.
Als u aanvullende informatie wilt ontvangen als de aanvraag is gedefinieerd, gebruikt u de functie BroadcastSystemMessageEx.
BroadcastSystemMessageEx- Hiermee wordt een bericht verzonden naar de opgegeven geadresseerden. De ontvangers kunnen toepassingen, installeerbare stuurprogramma's, netwerkstuurprogramma's, apparaatstuurprogramma's op systeemniveau of een combinatie van deze systeemonderdelen zijn.
Deze functie is vergelijkbaar met BroadcastSystemMessage, behalve dat deze functie meer informatie van de geadresseerden kan retourneren.
DispatchMessage- Verzendt een bericht naar een vensterprocedure. Het wordt meestal gebruikt om een bericht te verzenden dat is opgehaald door de functie GetMessage.
GetInputState- Bepaalt of er muisknop- of toetsenbordberichten in de berichtenwachtrij van de oproepthread staan.
GetMessage- Hiermee wordt een bericht opgehaald uit de berichtenwachtrij van de oproepthread. Met de functie worden binnenkomende verzonden berichten verzonden totdat een gepost bericht beschikbaar is voor het ophalen.
In tegenstelling tot GetMessage-, wacht de functie PeekMessage niet tot een bericht is gepost voordat het wordt geretourneerd.
GetMessageExtraInfo- Haalt de extra berichtinformatie voor de huidige thread op. Extra berichtinformatie is een toepassings- of stuurprogramma-gedefinieerde waarde die is gekoppeld aan de berichtenwachtrij van de huidige thread.
GetMessagePos- Hiermee haalt u de cursorpositie op voor het laatste bericht dat is opgehaald door de functie GetMessage.
Als u de huidige positie van de cursor wilt bepalen, gebruikt u de functie GetCursorPos.
GetMessageTime- Hiermee wordt de berichttijd opgehaald voor het laatste bericht dat is opgehaald door de functie GetMessage. De tijd is een lang geheel getal dat de verstreken tijd, in milliseconden, aangeeft vanaf het moment dat het systeem werd gestart op het moment dat het bericht werd gemaakt (dat wil gezegd, in de berichtenwachtrij van de thread).
GetQueueStatus- Geeft het type berichten aan dat in de berichtenwachtrij van de oproepthread is gevonden.
InSendMessage- Bepaalt of de huidige vensterprocedure een bericht verwerkt dat is verzonden vanuit een andere thread (in hetzelfde proces of een ander proces) door een aanroep naar de functie SendMessage.
Gebruik de functie InSendMessageEx om aanvullende informatie te verkrijgen over hoe het bericht is verzonden.
InSendMessageEx- Bepaalt of de huidige vensterprocedure een bericht verwerkt dat is verzonden vanuit een andere thread (in hetzelfde proces of een ander proces).
PeekMessage- Verzendt binnenkomende verzonden berichten, controleert de berichtenwachtrij voor een geplaatst bericht en haalt het bericht op (indien aanwezig).
PostMessage- Plaatst een bericht in de berichtenwachtrij die is gekoppeld aan de thread die het opgegeven venster heeft gemaakt en retourneert zonder te wachten totdat de thread het bericht verwerkt.
Als u een bericht wilt posten in de berichtenwachtrij die is gekoppeld aan een thread, gebruikt u de functie PostThreadMessage.
PostQuitMessage- Geeft aan het systeem aan dat een thread een verzoek heeft ingediend om te beëindigen (afsluiten). Deze wordt meestal gebruikt als reactie op een WM_DESTROY bericht.
PostThreadMessage- Hiermee plaatst u een bericht in de berichtenwachtrij van de opgegeven thread. Het retourneert zonder te wachten totdat de thread het bericht verwerkt.
RegisterWindowMessage- Definieert een nieuw vensterbericht dat gegarandeerd uniek is in het hele systeem. De berichtwaarde kan worden gebruikt bij het verzenden of plaatsen van berichten.
ReplyMessage- Antwoorden op een bericht dat is verzonden via de functie SendMessage zonder dat er een besturingselement wordt geretourneerd naar de functie die SendMessage-wordt aangeroepen.
SendAsyncProc- Een door de toepassing gedefinieerde callback-functie die wordt gebruikt met de functie SendMessageCallback. Het systeem geeft het bericht door aan de callback-functie nadat het bericht is doorgegeven aan de doelvensterprocedure. De SENDASYNCPROC type definieert een aanwijzer naar deze callback-functie. SendAsyncProc- is een tijdelijke aanduiding voor de naam van de door de toepassing gedefinieerde functie.
SendMessage- Hiermee wordt het opgegeven bericht verzonden naar een venster of vensters. Met de functie SendMessage wordt de vensterprocedure voor het opgegeven venster aangeroepen en wordt pas geretourneerd nadat de vensterprocedure het bericht heeft verwerkt.
Als u een bericht wilt verzenden en onmiddellijk wilt retourneren, gebruikt u de functie SendMessageCallback of SendNotifyMessage. Als u een bericht wilt posten in de berichtenwachtrij van een thread en onmiddellijk wilt retourneren, gebruikt u de functie PostMessage of PostThreadMessage.
SendMessageCallback- Hiermee wordt het opgegeven bericht verzonden naar een venster of vensters. Hiermee wordt de vensterprocedure voor het opgegeven venster aanroepen en onmiddellijk geretourneerd. Nadat de vensterprocedure het bericht heeft verwerkt, roept het systeem de opgegeven callback-functie aan, waarbij het resultaat van de berichtverwerking en een door de toepassing gedefinieerde waarde wordt doorgegeven aan de callback-functie.
SendMessageTimeout- Hiermee wordt het opgegeven bericht verzonden naar een van meer vensters.
SendNotifyMessage- Hiermee wordt het opgegeven bericht verzonden naar een venster of vensters. Als het venster is gemaakt door de aanroepende thread, SendNotifyMessage de vensterprocedure voor het venster aanroept en niet terugkeert totdat het bericht is verwerkt door de vensterprocedure. Als het venster is gemaakt door een andere thread, geeft SendNotifyMessage het bericht door aan de vensterprocedure en wordt onmiddellijk geretourneerd; er wordt niet gewacht totdat de vensterprocedure is voltooid voor het verwerken van het bericht.
SetMessageExtraInfo- Hiermee stelt u de extra berichtinformatie voor de huidige thread in. Extra berichtinformatie is een toepassings- of stuurprogramma-gedefinieerde waarde die is gekoppeld aan de berichtenwachtrij van de huidige thread. Een toepassing kan de functie GetMessageExtraInfo gebruiken om de extra berichtgegevens van een thread op te halen.
TranslateMessage- Vertaalt virtuele-sleutelberichten in tekenberichten. De tekenberichten worden geplaatst in de berichtenwachtrij van de aanroepende thread, om te worden gelezen wanneer de thread de volgende keer de GetMessage- of PeekMessage-functie aanroept.
WaitMessage- Geeft de controle over andere threads wanneer een thread geen andere berichten in de berichtenwachtrij heeft. De functie WaitMessage onderbreekt de thread en wordt pas geretourneerd als er een nieuw bericht in de berichtenwachtrij van de thread wordt geplaatst.

Berichtconstanten

Naam Beschrijving
OCM__BASE Wordt gebruikt voor het definiëren van privéberichten voor gebruik door privévensterklassen.
WM_APP Wordt gebruikt om privéberichten te definiëren.
WM_USER Wordt gebruikt voor het definiëren van privéberichten voor gebruik door privévensterklassen.

Berichtstructuren

Naam Beschrijving
BSMINFO- Bevat informatie over een venster dat een aanvraag van BroadcastSystemMessageExheeft geweigerd.
MSG- Bevat berichtgegevens uit de berichtenwachtrij van een thread.