Función PoCreatePowerRequest (ntifs.h)
La rutina PoCreatePowerRequest crea un objeto de solicitud de energía.
NTSTATUS PoCreatePowerRequest(
[out] PVOID *PowerRequest,
[in] PDEVICE_OBJECT DeviceObject,
[in] PCOUNTED_REASON_CONTEXT Context
);
[out] PowerRequest
Puntero a una ubicación en la que la rutina escribe un puntero al 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 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.
PoCreatePowerRequest devuelve STATUS_SUCCESS si la llamada se realiza correctamente. Si se produce un error en la llamada, los códigos de retorno de error posibles 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. |
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 la PoSetPowerRequest y poClearPowerRequest rutinas.
Un controlador puede usar solicitudes de energía para invalidar determinados 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 de deje automáticamente en blanco la pantalla durante largos períodos 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.
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 7 |
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 |