PeekMessage

PeekMessage 함수는 메시지에 대 한 스레드 메시지 큐를 확인 하 고 (해당 되는 경우) 메시지 지정 된 구조에 배치.

(BOOL PeekMessage LPMSG  lpMsg, / / 메시지 구조를 가리키는 포인터HWNDhWnd, / / 창 핸들UINTwMsgFilterMin, / / 처음 메시지UINTwMsgFilterMax, / / 마지막 메시지UINTwRemoveMsg / / 제거 플래그);
 

매개 변수

lpMsg
메시지 정보를 수신 하는 메시지 구조에 대 한 포인터.
hWnd
메시지를 검사 하는 창 핸들.
wMsgFilterMin
메시지 검사의 범위에 있는 첫 번째 메시지의 값을 지정 합니다.
wMsgFilterMax
메시지 검사의 범위에 있는 마지막 메시지의 값을 지정 합니다.
wRemoveMsg
메시지를 처리 하는 방법을 지정 합니다. 이 매개 변수는 다음 값 중 하나가 될 수 있습니다.:
의미
PM_NOREMOVE 메시지는 큐에서 제거 되지 고 처리 후 PeekMessage 에 의해.
PM_REMOVE 메시지 제거 큐에서 처리 후 PeekMessage 에 의해.

필요에 따라 PM_NOREMOVE 또는 PM_REMOVE PM_NOYIELD 값을 결합할 수 있습니다. 이 플래그는 유휴가 호출자에 대 한 대기 스레드를 해제에서 체계를 방지 (참조 WaitForInputIdle).

기본적으로 모든 메시지 유형은 처리 됩니다. 특정 메시지만 처리 되어야를 지정합니다 하려면 다음 값 중 하나 이상을 지정합니다:
의미
PM_QS_INPUT Windows NT 5.0 및 Windows 98: 마우스 및 키보드 메시지 처리.
PM_QS_PAINT Windows NT 5.0 및 Windows 98: 페인트 메시지 처리.
PM_QS_POSTMESSAGE Windows NT 5.0 및 Windows 98: 타이머 및 단축키를 포함 하 여 모든 게시 메시지 처리.
PM_QS_SENDMESSAGE Windows NT 5.0 및 Windows 98: 프로세스의 모든 보낸 메시지.

반환 값

반환 값은 0이 아닌 메시지를 사용할 수 있는 경우.

반환 값 0은 사용할 수 있는 메시지가 없는 경우.

주의

GetMessage 함수 달리 PeekMessage 함수 기다리지 않습니다 반환 하기 전에 큐에 배치 될 메시지.

PeekMessagehWnd 매개 변수 또는 메시지 값 wMsgFilterMinwMsgFilterMax 매개 변수에 의해 지정 된 범위 내에서 IsChild 함수에 의해 지정 된 대로 해당 자식으로 식별 하는 창에 연결 된 메시지를 검색 합니다. HWnd NULL 이면 PeekMessage 호출 하는 현재 스레드에 속하는 모든 창에 대 한 메시지를 검색 합니다. (PeekMessage 다른 스레드에 속해 있는 windows에 대 한 메시지 검색 하지 않습니다.) HWnd -1 이면 PeekMessagePostThreadMessage 함수에 의해 게시 됨 메시지 hWnd 값이 NULL 반환 합니다. WMsgFilterMinwMsgFilterMax 는 모두 0, PeekMessage 사용 가능한 모든 메시지를 반환 합니다 (즉, 범위 필터링 수행).

WM_KEYFIRST 및 WM_KEYLAST 상수는 모든 키보드 메시지; 검색 필터 값으로 사용할 수 있습니다. 모든 마우스 메시지를 검색 하는 WM_MOUSEFIRST 및 WM_MOUSELAST 상수를 사용할 수 있습니다.

일반적으로 PeekMessage 함수에는 큐에서 WM_PAINT 메시지 제거 되지 않습니다. WM_PAINT 메시지 처리 될 때까지 큐에 남아 있습니다. 그러나, 경우 WM_PAINT 메시지 null 업데이트 지역, PeekMessage 에서 제거지 않습니다 큐.

Windows CE: Null 업데이트 영역 WM_PAINT 메시지를 큐에서 제거 되지 않습니다.

QuickInfo

nbsp;?Windows &NT: 버전 3.1 이상이 필요 합니다.
Windows:Windows 95 이상이 필요합니다.
Windows CE:버전 1.0 이상이 필요합니다.
헤더:Winuser.h에서 선언합니다.
가져오기 라이브러리:User32.lib를 사용 합니다.
유니코드:Windows NT에서 유니코드와 ANSI 버전으로 구현.

참고 항목

메시지와 메시지 큐 개요, 메시지 및 메시지 큐 기능, GetMessage, IsChild, MSG, WaitForInputIdle, WaitMessage

 

Index