SendMessage
// C++
LRESULT SendMessage(
HWND hWnd,
UINT Msg,
WPARAM wParam,
LPARAM lParam
);
LRESULT SendMessage(
HWND hWnd,
UINT Msg,
WPARAM wParam,
LPARAM lParam
);
Funkcja SendMessage wysyła komunikat do okna określonego w parametrze hWnd. Funkcja czeka na obsłużenie komunikatu - dopiero po tym zwraca jego rezultat. Podobna funkcja - PostMessage - umieszcza komunikat w kolejce i natychmiast kończy swoje działanie.
Parametry:
hWnd
Określa uchwyt okna; uchwyt dowolnego okna można pobrać korzystając z funkcji FindWindow.
Msg
Określa komunikat jaki ma zostać wysłany.
wParam
Dodatkowe informacje wysyłane z komunikatem.
lParam
Dodatkowe informacje wysyłane z komunikatem.
Wartość zwracana:
Funkcja zwraca rezultat obsłużenia wysłanego komunikatu.
Uwagi:
Windows 95/98/Me: Wersja Unicode funkcji (SendMessageW) jest wspierana przez Warstwę Unicode (Microsoft Layer for Unicode) - MSLU. Aby użyć funkcji w wersji Unicode, należy dokonać pewnych zmian w aplikacji wedle wskazówek nakreślonych w Microsoft Layer for Unicode on Windows 95/98/Me Systems (eng)
Zobacz też:



while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
SendMessage(msg.hwnd,msg.message,msg.wParam,msg.lParam);//działa tak samo jak DispatchMessage
}
Z tego wniosek, że PostMessage tylko opóźnia wywołanie funkcji typu SendMessage(), bo tak czy jak zdarzenie z PostMessage() i tak zostanie wywołanie przez SendMessage() lub DispatchMessage()
Tutaj jest to opisane:
http://sinus.one.pl/~keywords/slownik.php?action=pokaz&id=58