PostMessage

Adam Boduch
// C
BOOL PostMessage(
    HWND hWnd,	
    UINT Msg,	
    WPARAM wParam,	
    LPARAM lParam 	
   );
// Delphi
function PostMessage(hWnd: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): BOOL; stdcall;

Funkcja PostMessage umieszcza komunikat w kolejce i natychmiast kończy swoje działanie.
Podobna funkcja - SendMessage - wysyła komunikat do okna określonego w parametrze hWnd i czeka na jego obsłużenie, po czym zwraca jego rezultat.

Parametry:
hWnd
Parametr określa uchwyt okna do którego zostanie wysłany komunikat. Uchwyt okna może zostać pobrany przy pomocy funkcji FindWindow.

Msg
Komunikat, który ma zostać wysłany do okna.

wParam
Dodatkowe informacje wysyłane wraz z komunikatem.

lParam
Dodatkowe informacje wysyłane wraz z komunikatem.

Wartość zwracana:
Funkcja zwraca wartość True jeżeli komunikat został dostarczony - False w przeciwnym wypadku.

Uwagi:
Windows 95/98/Me: Wersja Unicode funkcji (PostMessageW) 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ż:

4 komentarzy

No to ja sie zgadzam z tym ze mozna dodac od innych kategorii. W Delphi istnieje modul "Windows", w ktorym umiejscowiona jest ta funkcja, a opisujemy inne moduly Delphi wiec wlasnie aby nie dublowac umieszczamy tez w kategorii "WinAPI".

No ale to tak samo należy to dodać do innych języków na platformę Win32 - bo teraz to można rozumieć, że w C++ nie można użyć tej funkcji, albo że Delphi ma swoją wersję, albo .... po prostu każdy język na platformę Win32 korzysta z WinAPI - nie trzeba dublować tych funkcji w każdym języku [albo specjalnie wyróżniać (nie wiedzieć czemu) Delphi].

Jest w kategorii "WinAPI" oraz "Delphi":

PostMessage
PostMessage

Wybacz, ale dlaczego to jest w kategorii Delphi? :|
To w takim razie należy też dodać kategorię: C, C++, Assembler, i co tam jeszcze... identyczny związek.