일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- IF (식)
- DetectHiddenWindows
- autohotkey
- 함수
- Blocks
- EnvDiv
- IfWinExist
- SetKeyDelay
- IfInString
- EnvSub
- SetTitleMatchMode
- ControlSend
- MouseClick
- EnvMult
- 식
- Menu
- if
- EnvSet
- StringGetPos
- Threads
- 식의 설명
- SetControlDelay
- SetMouseDelay
- SetEnv
- API
- if(식)
- Var:=식
- EnvAdd
- 배열
- ControlGetText
- Today
- Total
ㄴrㅎnㅂrㄹrㄱi
PostMessage(A) 본문
PostMessage(A)
지정된 윈도우를 작성한 스렛드에 관련지을 수 있고 있는 메시지 큐에 메세지를 포스트합니다.이 함수는, 메세지의 처리의 완료를 기다리지 않고 제어를 돌려줍니다.
스렛드에 관련지을 수 있고 있는 메시지 큐에 메세지를 포스트하려면 , PostThreadMessage 함수를 사용합니다.
BOOL PostMessageA( HWND hWnd, // 윈도우 핸들 UINT Msg, // 메세지 코드 WPARAM wParam, // wParam파라미터 LPARAM lParam // lParam파라미터 );
USER32.DLL
인수
- hWnd
-
메세지를 받아들이는 윈도우의 핸들을 지정합니다.
0xFFFF (HWND_BROADCAST) (을)를 지정하면, 시스템에 있는 모든 톱 레벨 윈도우에 포스트됩니다.아이 윈도우에 대해서는 메세지는 메세지는 포스트되지 않습니다.
0 (NULL) (을)를 지정하면, dwThreadId 파라미터에 현재의 스렛드 ID (을)를 설정해 PostThreadMessage 함수를 호출했는지와 같이 동작합니다.
- Msg
-
포스트되는 메세지 코드를 지정합니다.
- wParam
-
메세지 고유 정보(윈도우 프로시저의 wParam 파라미터)를 지정합니다.
- lParam
-
메세지 고유 정보(윈도우 프로시저의 lParam 파라미터)를 지정합니다.
반환값
성공하면 0 이외의 값이 돌아갑니다.
실패하면 0 하지만 돌아갑니다.확장 에러 정보를 취득하려면 , GetLastError 함수를 사용합니다.
해설
메시지 큐에 격납된 메세지는, 그 스렛드가 GetMessage 함수 또는 PeekMessage 함수를 호출하는 것에 의해서 큐로부터 꺼내집니다.
Msg 파라미터에 HWND_BROADCAST (을)를 지정하고 통신을 행하는 경우는, 상호의 어플리케이션간에 있어서의 통신을 위한 독특한 메세지를 취득하는데, RegisterWindowMessage (을)를 사용해야 합니다.
비동기 메세지 함수( PostMessage, SendNotifyMessage, SendMessageCallback 함수)로 WM_USER 이후의 메세지를 건네주는 경우에는, 메세지 파라미터에 메모리브록크의 주소를 지정할 수 없습니다.이것은, 메세지 처리가 행해지기 전에 호출해 측에 처리가 돌아와, 메세지 수취하는 측의 스렛드가 메모리브록크에 액세스 하기 전에 호출해 옆스렛드가 그것을 해방해 버릴 가능성이 있기 때문에입니다.
WM_QUIT 메세지를 포스트하려면 PostMessage 함수는 아니고 PostQuitMessage 함수를 사용하지 않으면 안됩니다.
대응 정보
Windows 95 이후 / Windows NT 3.1 이후
'API 관련 > Win32 API 함수' 카테고리의 다른 글
RegCloseKey (0) | 2007.11.08 |
---|---|
ReadFile (0) | 2007.11.08 |
PathUnquoteSpaces(A) (0) | 2007.11.08 |
PathRenameExtension(A) (0) | 2007.11.08 |
PathRemoveExtension(A) (0) | 2007.11.08 |