Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El PoRegisterSystemState rutina registra el sistema tan ocupado debido a cierta actividad.
Sintaxis
PVOID PoRegisterSystemState(
[in, out] PVOID StateHandle,
[in] EXECUTION_STATE Flags
);
Parámetros
[in, out] StateHandle
Puntero a un búfer proporcionado por el autor de la llamada para un identificador de estado de registro. El tamaño, en bytes, del búfer se sizeof(ULONG). Si es NULL, se trata de un nuevo registro. Si no es NULL, este parámetro apunta a un identificador devuelto por una llamada anterior a PoRegisterSystemState.
[in] Flags
Indica el tipo de actividad, según lo especificado por un OR bit a bit de uno o varios de los valores siguientes:
| Valor | Significado |
|---|---|
| ES_SYSTEM_REQUIRED | El sistema no está inactivo, independientemente de la carga aparente. |
| ES_DISPLAY_REQUIRED | Se requiere el uso de la pantalla. |
| ES_USER_PRESENT | Un usuario está presente. |
| ES_CONTINUOUS | La configuración es continua y debe permanecer en vigor hasta que se cambie explícitamente. |
Valor devuelto
PoRegisterSystemState devuelve un identificador que se usará más adelante para cambiar o anular el registro del estado ocupado del sistema. Devuelve NULL si no se pudo asignar el identificador.
Observaciones
PoRegisterSystemState registra el estado ocupado del sistema como se indica en las marcas. El registro persiste hasta que el autor de la llamada lo cambia explícitamente con otra llamada a PoRegisterSystemState o lo cancela con una llamada a PoUnregisterSystemState.
El parámetro Flags especifica el tipo de actividad en curso. Los controladores pueden especificar cualquier combinación de las marcas.
Establecer ES_CONTINUOUS hace que el estado ocupado persista hasta que un controlador cambie explícitamente o lo cancele llamando a PoRegisterSystemState o PoUnregisterSystemState.
Un controlador puede establecer el estado ocupado del sistema para solicitar que el administrador de energía de evitar transiciones de estado de energía del sistema fuera del estado de trabajo del sistema (S0) mientras se está produciendo la actividad del controlador. Tenga en cuenta, sin embargo, que en algunas circunstancias (como una batería críticamente baja), el administrador de energía puede invalidar esta solicitud y poner el sistema en suspensión de todos modos.
Para establecer el estado de energía del sistema, llame a PoSetSystemState.
Requisitos
| Requisito | Valor |
|---|---|
| cliente mínimo admitido | Windows 2000 |
| de la plataforma de destino de | Universal |
| encabezado de | ntifs.h (include Wdm.h, Ntddk.h, Ntifs.h) |
| biblioteca de | NtosKrnl.lib |
| DLL de | NtosKrnl.exe |
| irQL | <=APC_LEVEL |