PoRegisterSystemState 함수(ntifs.h)

PoRegisterSystemState 루틴은 특정 활동으로 인해 시스템을 사용 중으로 등록합니다.

구문

PVOID PoRegisterSystemState(
  [in, out] PVOID           StateHandle,
  [in]      EXECUTION_STATE Flags
);

매개 변수

[in, out] StateHandle

등록 상태 핸들에 대한 호출자 제공 버퍼에 대한 포인터입니다. 버퍼의 크기(바이트)는 입니다 sizeof(ULONG). NULL인 경우 새 등록입니다. NULL이 아닌 경우 이 매개 변수는 PoRegisterSystemState에 대한 이전 호출에서 반환된 핸들을 가리킵니다.

[in] Flags

다음 값 중 하나 이상의 비트 OR로 지정된 활동 형식을 나타냅니다.

의미
ES_SYSTEM_REQUIRED 시스템은 명백한 부하에 관계없이 유휴 상태가 아닙니다.
ES_DISPLAY_REQUIRED 디스플레이를 사용해야 합니다.
ES_USER_PRESENT 사용자가 있습니다.
ES_CONTINUOUS 설정은 연속되며 명시적으로 변경될 때까지 계속 적용되어야 합니다.

반환 값

PoRegisterSystemState 는 나중에 시스템 사용 중 상태를 변경하거나 등록 취소하는 데 사용할 핸들을 반환합니다. 핸들을 할당할 수 없는 경우 NULL을 반환합니다.

설명

PoRegisterSystemState 는 플래그에 표시된 대로 시스템 사용 중 상태를 등록합니다. 등록은 호출자가 PoRegisterSystemState에 대한 다른 호출로 명시적으로 변경하거나 PoUnregisterSystemState 를 호출하여 취소할 때까지 유지 됩니다.

Flags 매개 변수는 진행 중인 작업의 형식을 지정합니다. 드라이버는 플래그의 조합을 지정할 수 있습니다.

ES_CONTINUOUS 설정하면 드라이버가 PoRegisterSystemState 또는 PoUnregisterSystemState를 호출하여 명시적으로 변경하거나 취소할 때까지 사용 중 상태가 유지됩니다.

드라이버는 드라이버 작업이 발생하는 동안 전원 관리자 가 시스템 전원 상태가 시스템 S0(작업 상태)에서 전환되지 않도록 요청하도록 시스템 사용 중 상태를 설정할 수 있습니다. 그러나 일부 상황에서(예: 배터리가 매우 부족한 경우) 전원 관리자는 이 요청을 재정의하고 시스템을 어쨌든 절전 모드로 만들 수 있습니다.

시스템 전원 상태를 설정하려면 PoSetSystemState를 호출합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000
대상 플랫폼 유니버설
헤더 ntifs.h(Wdm.h, Ntddk.h, Ntifs.h 포함)
라이브러리 NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <=APC_LEVEL

추가 정보

PoSetSystemState

PoUnregisterSystemState