PBT_APMQUERYSUSPEND 이벤트
PBT_APMQUERYSUSPEND 요구 사항 섹션에 지정된 운영 체제에서 사용할 수 있습니다. 이 이벤트에 대한 지원이 Windows Vista에서 제거되었습니다. 대신 SetThreadExecutionState를 사용합니다.]
컴퓨터 일시 중단 권한을 요청합니다. 권한을 부여하는 애플리케이션에서는 반환하기 전에 일시 중단에 대비한 작업을 수행해야 합니다.
창은 WM_POWERBROADCAST 메시지를 통해 이 이벤트를 수신합니다. wParam 및 lParam 매개 변수는 다음에 설명된 대로 설정됩니다.
LRESULT
CALLBACK
WindowProc( HWND hwnd, // handle to window
UINT uMsg, // WM_POWERBROADCAST
WPARAM wParam, // PBT_APMQUERYSUSPEND
LPARAM lParam); // action flags
매개 변수
hwnd
창에 대한 핸들입니다.
uMsg
값 | 의미 |
---|---|
|
메시지 식별자입니다. |
wParam
값 | 의미 |
---|---|
|
이벤트 식별자입니다. |
lParam
작업 플래그입니다. 비트 0이 1인 경우 애플리케이션은 사용자에게 일시 중단을 준비하는 방법에 대한 지침을 묻는 메시지를 표시할 수 있습니다. 그렇지 않으면 애플리케이션이 사용자 상호 작용 없이 준비해야 합니다. 다른 모든 비트 값은 예약되어 있습니다.
반환 값
TRUE를 반환하여 일시 중단 요청을 부여합니다. 요청을 거부하려면 BROADCAST_QUERY_DENY 반환합니다.
설명
애플리케이션은 이 이벤트를 가능한 한 빨리 처리해야 합니다. 애플리케이션은 Flags 매개 변수에서 비트 0이 설정된 경우에만 일시 중단을 준비하는 방법에 대한 지침을 사용자에게 표시할 수 있습니다. 그러나 사용자가 랩톱 뚜껑을 닫았기 때문에 이 메시지가 발행되면 사용자에게 메시지를 표시할 수 없습니다. 애플리케이션은 노트북 뚜껑을 닫거나 전원 단추를 누르면 사용자가 특정 동작을 기대하고 전환이 성공할 수 있도록 해야 합니다.
시스템에서는 애플리케이션이 애플리케이션의 메시지 큐에서 PBT_APMQUERYSUSPEND 이벤트를 보내는 WM_POWERBROADCAST 메시지를 제거하는 데 약 20초가 허용됩니다. 애플리케이션이 20초 이내에 큐에서 메시지를 제거하지 않으면 시스템은 애플리케이션이 응답하지 않는 상태이며 애플리케이션이 절전 모드 요청에 동의한다고 가정합니다. 메시지 큐를 처리하지 않는 애플리케이션은 작업이 중단되었을 수 있습니다. 메시지 큐에서 메시지를 제거한 후 애플리케이션은 절전 모드 상태를 입력하기 전에 필요한 작업을 수행하는 데 필요한 만큼의 시간이 걸릴 수 있습니다. 시스템에서 PBT_APMSUSPEND 처리 중에 작업을 완료하는 데 20초만 허용하므로 20초가 더 오래 걸릴 수 있는 작업은 이 시점에서 수행해야 합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 |
Windows Server 2003[데스크톱 앱만 해당] |
클라이언트 지원 종료 |
Windows XP |
서버 지원 종료 |
Windows Server 2003 |
헤더 |
|