SendMessageTimeoutA 함수(winuser.h)
지정된 메시지를 하나 이상의 창으로 보냅니다.
통사론
LRESULT SendMessageTimeoutA(
[in] HWND hWnd,
[in] UINT Msg,
[in] WPARAM wParam,
[in] LPARAM lParam,
[in] UINT fuFlags,
[in] UINT uTimeout,
[out, optional] PDWORD_PTR lpdwResult
);
매개 변수
[in] hWnd
형식: HWND
창 프로시저에서 메시지를 받을 창에 대한 핸들입니다.
이 매개 변수가 HWND_BROADCAST(HWND)0xffff 경우 비활성 또는 보이지 않는 창을 포함하여 시스템의 모든 최상위 창으로 메시지가 전송됩니다. 함수는 각 창의 시간이 초과될 때까지 반환되지 않습니다. 따라서 총 대기 시간은 uTimeout 값까지 최상위 창 수를 곱할 수 있습니다.
[in] Msg
형식: UINT
보낼 메시지입니다.
시스템 제공 메시지 목록은 System-Defined 메시지참조하세요.
[in] wParam
형식: WPARAM
추가 메시지 관련 정보입니다.
[in] lParam
형식: LPARAM
추가 메시지 관련 정보입니다.
[in] fuFlags
형식: UINT
이 함수의 동작입니다. 이 매개 변수는 다음 값 중 하나 이상일 수 있습니다.
[in] uTimeout
형식: UINT
제한 시간 기간(밀리초)입니다. 메시지가 브로드캐스트 메시지인 경우 각 창에서 전체 시간 제한 기간을 사용할 수 있습니다. 예를 들어 5초 제한 시간을 지정하고 메시지를 처리하지 못하는 세 개의 최상위 창이 있는 경우 최대 15초의 지연 시간을 가질 수 있습니다.
[out, optional] lpdwResult
형식: PDWORD_PTR
메시지 처리의 결과입니다. 이 매개 변수의 값은 지정된 메시지에 따라 달라집니다.
반환 값
형식: LRESULT
함수가 성공하면 반환 값은 0이 아닌 값입니다. SendMessageTimeoutHWND_BROADCAST 사용되는 경우 개별 창 시간 제한에 대한 정보를 제공하지 않습니다.
함수가 실패하거나 시간이 초과되면 반환 값은 0입니다.
함수가 실패 시 SetLastError 항상 호출하지는 않습니다.
실패 이유가 중요한 경우 SendMessageTimeout을 호출하기 전에 SetLastError(ERROR_SUCCESS)를 호출합니다. 함수가 0을 반환하고 GetLastError
발언
함수는 지정된 창에 대한 창 프로시저를 호출하고 지정된 창이 다른 스레드에 속하는 경우 창 프로시저가 메시지를 처리하거나 지정된 제한 시간이 경과할 때까지 반환되지 않습니다. 메시지를 받는 창이 현재 스레드와 동일한 큐에 속하는 경우 창 프로시저가 직접 호출됩니다. 제한 시간 값은 무시됩니다.
이 함수는 스레드가 5초 이내에 getMessage 또는 유사한 함수를 호출하지 않은 경우
시스템은 시스템 메시지(0에서 (WM_USER-1) 범위의 메시지만 마샬링합니다. 다른 메시지(>= WM_USER)를 다른 프로세스로 보내려면 사용자 지정 마샬링을 수행해야 합니다.
메모
winuser.h 헤더는 SENDMessageTimeout을 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows 2000 Server [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | winuser.h(Windows.h 포함) |
라이브러리 | User32.lib |
DLL | User32.dll |
API 집합 | ext-ms-win-ntuser-message-l1-1-0(Windows 8에서 도입) |
참고 항목
개념
GetMessage
inSendMessage
메시지 및 메시지 큐
참조
SendDlgItemMessage
SendNotifyMessage