Función PowerSetRequest (winbase.h)

Incrementa el recuento de solicitudes de energía del tipo especificado para un objeto de solicitud de energía.

Sintaxis

BOOL PowerSetRequest(
  [in] HANDLE             PowerRequest,
  [in] POWER_REQUEST_TYPE RequestType
);

Parámetros

[in] PowerRequest

Identificador de un objeto de solicitud de energía.

[in] RequestType

Tipo de solicitud de energía que se va a incrementar. Este parámetro puede ser uno de los valores siguientes.

Valor Descripción
PowerRequestDisplayRequired La pantalla permanece activada aunque no haya ninguna entrada del usuario durante un período de tiempo prolongado.

Nota: Se debe tomar powerRequestSystemRequired además de powerRequestDisplayRequired para asegurarse de que la pantalla permanece activada y el sistema no entra en suspensión durante la solicitud.
PowerRequestSystemRequired El sistema continúa ejecutándose en lugar de entrar en suspensión después de un período de inactividad del usuario.
PowerRequestAwayModeRequired El sistema entra en modo de distancia en lugar de suspensión en respuesta a una acción explícita por parte del usuario. En modo de distancia, el sistema continúa ejecutándose, pero desactiva el audio y el vídeo para dar la apariencia de suspensión. PowerRequestAwayModeRequired solo es aplicable en sistemas de suspensión tradicional (S3).
PowerRequestExecutionRequired El proceso de llamada continúa ejecutándose en lugar de suspenderse o finalizarse mediante mecanismos de administración de la duración del proceso. Cuando y cuánto tiempo se permite ejecutar el proceso depende de la configuración del sistema operativo y de la directiva de energía.

En los sistemas de suspensión tradicional (S3), una solicitud PowerRequestExecutionRequired activa implica PowerRequestSystemRequired.

Valor devuelto

Si la función se realiza correctamente, devuelve un valor distinto de cero.

Si se produce un error en la función, devuelve cero. Para obtener información de error extendida, llame a GetLastError.

Comentarios

En los sistemas en espera modernos en la alimentación del controlador de dominio, el sistema y la ejecución de las solicitudes de energía necesarias finalizan 5 minutos después de que el tiempo de espera del sistema haya expirado.

Excepto en los sistemas PowerRequestAwayModeRequired en sistemas de suspensión tradicional (S3), las solicitudes de alimentación se finalizan tras la entrada de suspensión del sistema iniciada por el usuario (botón de encendido, cierre de tapa o selección de Suspensión en el menú Inicio ).

Para ahorrar energía y proporcionar la mejor experiencia del usuario, las aplicaciones que usan solicitudes de energía deben seguir estos procedimientos recomendados:

  • Al crear una solicitud de energía, proporcione una cadena de texto localizada que describa el motivo de la solicitud en la estructura REASON_CONTEXT .
  • Llame a PowerSetRequest inmediatamente antes del escenario que requiere la solicitud.
  • Llame a PowerClearRequest para disminuir el recuento de referencias de la solicitud en cuanto finalice el escenario.
  • Limpie todos los objetos de solicitud y los identificadores asociados antes de que el proceso se cierre o el servicio se detenga.

Requisitos

   
Cliente mínimo compatible Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado winbase.h (incluye Windows.h)
Library Kernel32.lib
Archivo DLL Kernel32.dll

Vea también

PowerClearRequest

PowerCreateRequest