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
보낼 메시지입니다.
시스템 제공 메시지 목록은 시스템 정의 메시지를 참조하세요.
[in] wParam
형식: WPARAM
추가 메시지 관련 정보입니다.
[in] lParam
형식: LPARAM
추가 메시지 관련 정보입니다.
[in] fuFlags
형식: UINT
이 함수의 동작입니다. 이 매개 변수는 다음 값 중 하나 이상일 수 있습니다.
[in] uTimeout
형식: UINT
제한 시간 기간(밀리초)입니다. 메시지가 브로드캐스트 메시지인 경우 각 창에서 전체 시간 제한 기간을 사용할 수 있습니다. 예를 들어 5초 시간 제한 기간을 지정하고 메시지를 처리하지 못하는 최상위 창이 3개 있는 경우 최대 15초 지연이 발생할 수 있습니다.
[out, optional] lpdwResult
형식: PDWORD_PTR
메시지 처리의 결과입니다. 이 매개 변수의 값은 지정된 메시지에 따라 달라집니다.
반환 값
형식: LRESULT
함수가 성공하면 반환 값이 0이 아닙니다. SendMessageTimeout 은 HWND_BROADCAST 사용되는 경우 개별 창 시간 제한에 대한 정보를 제공하지 않습니다.
함수가 실패하거나 시간이 초과되면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다. GetLastError가ERROR_TIMEOUT 반환하면 함수 시간이 초과됩니다.
Windows 2000: GetLastError가 0을 반환하면 함수 시간이 초과됩니다.
설명
함수는 지정된 창에 대한 창 프로시저를 호출하고 지정된 창이 다른 스레드에 속하는 경우 창 프로시저가 메시지를 처리하거나 지정된 시간 제한 기간이 경과할 때까지 반환되지 않습니다. 메시지를 받는 창이 현재 스레드와 동일한 큐에 속하는 경우 창 프로시저가 직접 호출됩니다. 시간 제한 값은 무시됩니다.
이 함수는 스레드가 GetMessage 또는 유사한 함수를 5초 이내에 호출하지 않은 경우 응답하지 않는 것으로 간주합니다.
시스템은 시스템 메시지(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에 도입됨) |
추가 정보
개념
참조
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기