BOOL PostMessage(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
- Msg 인수로 지정된 메시지를 hWnd 윈도우의 메시지 큐에 집어넣어 윈도우
프로시저에서 이 메시지를 처리하도록 함(큐에 성공적으로 넣으면 TRUE)
- 메시지를 큐에 넣기만 하고 바로 리턴하므로 메시지를 붙인 후 즉시 다른 작업을 함
- 만약 큐에 대기하고 있는 다른 메시지가 있다면 바로 처리가 되지 않음.
- GetMessage함수에 의해 읽혀지고, DispatchMessage 함수에 의해 윈도우 프로시저로 보내져서 처리
- 보통 급하게 처리할 필요가 없거나 또는 지금 하고 있는 작업을 완전히 끝내야만 처리할 수 있는 메시지는 이 함수를 이용
LRESULT SendMessage(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
- 메시지 큐에 넣는 것이 아니라 곧바로 윈도우 프로시저로 보내 즉각 처리하도록 함
- 메시지가 완전히 처리되기 전에는 리턴하지 않음(즉, 블록시킴)
- 윈도우간, 특히 윈도우와 차일드 컨트롤간의 통신에 자주 사용됨
PostMessage 함수는 큐에 넣어서 한가해질 때 어떤 일을 하라는 신호이며,
SendMessage함수는 WndProc의 case를 호출 하는 것 처럼 바로 일을 하라는 신호
참조 : 윈도우즈 API 정복(김상형 저)
관련사이트 : http://winapi.co.kr
'API / MFC > Function Information' 카테고리의 다른 글
CreateFile Function(Windows / WINCE) (0) | 2010.03.30 |
---|---|
SendDlgItemMessage Function (0) | 2010.03.30 |
CFileFind Class (0) | 2010.03.23 |
CFileDialog 생성자 함수(CFileDialog::CFileDialog) (0) | 2010.03.10 |
CWnd::UpdateData() (0) | 2010.03.09 |