Die Funktion PostThreadMessage stellt (stellen) eine Nachricht in der Warteschlange des angegebenen Threads und dann Rückkehr ohne warten auf den Thread zum Verarbeiten der Nachricht.
BOOL PostThreadMessage) DWORD IdThread, / / thread-KennungUINTMsg, / / Nachricht PostenWPARAMwParam, / / erste message ParameterLPARAMlParam / / zweite Nachrichtenparameter);
Die Funktion schlägt fehl, wenn der angegebene Thread eine Nachrichtenwarteschlange nicht hat. Das System erzeugt Meldungswarteschlange eines Threads, wenn der Thread seine erste einer der Win32 Benutzer oder GDI-Funktionen aufruft. Weitere Informationen finden Sie unter im Abschnitt Hinweise.
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich NULL.
Wenn die Funktion fehlschlägt, ist der Rückgabewert 0 (null). Rufen Sie Fehlerinformationen verlängert bekommen, GetLastError. GetLastError gibt ERROR_INVALID_THREAD_ID zurück, wenn IdThread kein gültiger Threadbezeichner ist, oder wenn der Thread angegeben IdThread keine Message Queue hat.
Der Thread, den die Nachricht zurückgesendet wird, muss eine Meldungswarteschlange erstellt haben, oder sonst der Aufruf PostThreadMessage fehlschlägt. Verwenden Sie eine der folgenden Methoden, um diese Situation zu bewältigen:
Der Thread an dem die Nachricht gesendet wird, ruft die Nachricht durch Aufrufen der Funktion GetMessage oder PeekMessage . Das Hwnd Mitglied der zurückgegebenen MSG -Struktur ist NULL.
&Nbsp; Windows NT: Version 3.1 oder höher erforderlich.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Version 1.0 oder höher benötigt.
Header:In winuser.h deklarierten.
Importieren Bibliothek:Verwenden Sie user32.lib.
Unicode:Als Unicode und ANSI-Versionen unter Windows NT implementiert.
Nachrichten und Message Queues Übersicht, Message und Message Queue-Funktionen, GetCurrentThreadId, GetMessage, GetWindowThreadProcessId, MSG, PeekMessage PostMessage, schlafen, WaitForSingleObject