Función PoCreatePowerRequest (ntifs.h)
La rutina PoCreatePowerRequest crea un objeto de solicitud de energía.
Sintaxis
NTSTATUS PoCreatePowerRequest(
[out] PVOID *PowerRequest,
[in] PDEVICE_OBJECT DeviceObject,
[in] PCOUNTED_REASON_CONTEXT Context
);
Parámetros
[out] PowerRequest
Puntero a una ubicación en la que la rutina escribe un puntero en el objeto de solicitud de energía recién creado. Si se produce un error en la llamada, la rutina escribe NULL en esta ubicación.
[in] DeviceObject
Puntero al objeto de dispositivo del autor de la llamada (una estructura de DEVICE_OBJECT ).
[in] Context
Puntero a una estructura de COUNTED_REASON_CONTEXT que describe por qué el autor de la llamada está creando el objeto de solicitud de energía. Este parámetro es opcional y se puede establecer en NULL.
Valor devuelto
PoCreatePowerRequest devuelve STATUS_SUCCESS si la llamada es correcta. Si se produce un error en la llamada, los posibles códigos de retorno de error incluyen lo siguiente:
Código devuelto | Descripción |
---|---|
STATUS_INVALID_PARAMETER | El parámetro DeviceObject es NULL. |
STATUS_INSUFFICIENT_RESOURCES | No hay suficiente memoria disponible para crear un objeto de solicitud de energía. |
Comentarios
Esta rutina crea un objeto de solicitud de energía. Para habilitar las solicitudes de energía, el autor de la llamada debe crear un objeto de solicitud de energía y usar ese objeto para todas las llamadas a las rutinas PoSetPowerRequest y PoClearPowerRequest .
Un controlador puede usar solicitudes de energía para invalidar ciertos aspectos del comportamiento de energía predeterminado del equipo. Por ejemplo, un controlador para un dispositivo receptor de TV puede usar solicitudes de energía para evitar que el administrador de energía deje automáticamente en blanco la pantalla durante períodos prolongados de tiempo en los que no se produzca ninguna interacción del usuario.
Cuando el objeto de solicitud de energía ya no es necesario, el autor de la llamada debe eliminar el objeto llamando a la rutina PoDeletePowerRequest . El controlador debe eliminar el objeto de solicitud de energía antes de eliminar el objeto de dispositivo que se usó para crear el objeto de solicitud de energía.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 7 |
Plataforma de destino | Universal |
Encabezado | ntifs.h (incluye Wdm.h, Ntddk.h, Ntifs.h) |
Library | NtosKrnl.lib |
Archivo DLL | NtosKrnl.exe |
IRQL | <= APC_LEVEL |