Mensaje WM_POWERBROADCAST

Notifica a las aplicaciones que se ha producido un evento de administración de energía.

Una ventana recibe este mensaje mediante la función WindowProc.

LRESULT CALLBACK WindowProc(
  HWND   hwnd,    // handle to window
  UINT   uMsg,    // WM_POWERBROADCAST
  WPARAM wParam,  // power-management event
  LPARAM lParam   // function-specific data
);

Parámetros

hwnd

Identificador de ventana.

uMsg

Value Significado
WM_POWERBROADCAST
536 (0x218)
Identificador de mensaje.

wParam

Evento de administración de energía. Este parámetro puede ser uno de los siguientes identificadores de evento.

Evento Significado
PBT_APMPOWERSTATUSCHANGE
10 (0xA)
El estado de energía ha cambiado.
PBT_APMRESUMEAUTOMATIC
18 (0x12)
La operación se reanuda automáticamente desde un estado de baja energía. Este mensaje se envía cada vez que se reanuda el sistema.
PBT_APMRESUMESUSPEND
7 (0x7)
La operación se reanuda desde un estado de baja energía. Este mensaje se envía después de PBT_APMRESUMEAUTOMATIC si la entrada del usuario desencadena la reanudación, como presionar una tecla.
PBT_APMSUSPEND
4 (0x4)
El sistema está suspendiendo la operación.
PBT_POWERSETTINGCHANGE
32787 (0x8013)
Se ha recibido un evento de cambio de configuración de energía.

lParam

Datos específicos del evento. Para la mayoría de los eventos, este parámetro está reservado y no se usa.

Si el parámetro wParam es PBT_POWERSETTINGCHANGE, el parámetro lParam es un puntero a una estructura POWERBROADCAST_SETTING.

Valor devuelto

Una aplicación debe devolver TRUE si procesa este mensaje.

Comentarios

El sistema siempre envía un mensaje PBT_APMRESUMEAUTOMATIC cada vez que se reanuda el sistema. Si el sistema se reanuda en respuesta a la entrada del usuario, como presionar una tecla, el sistema también envía un mensaje PBT_APMRESUMESUSPEND después de enviar PBT_APMRESUMEAUTOMATIC.

Los mensajes WM_POWERBROADCAST no distinguen entre diferentes estados de baja energía. Una aplicación solo puede determinar que el sistema entra o se ha reanudado desde un estado de baja energía; no puede determinar el estado de energía específico. El sistema registra detalles sobre las transiciones de estado de energía en el registro de eventos del sistema de Windows.

Para evitar que el sistema pase a un estado de baja energía en Windows Vista, una aplicación debe llamar a SetThreadExecutionState para informar al sistema de que está en uso.

Los siguientes mensajes no se admiten en ninguno de los sistemas operativos especificados en la sección Requisitos:

  • PBT_APMQUERYSTANDBY
  • PBT_APMQUERYSTANDBYFAILED
  • PBT_APMSTANDBY
  • PBT_APMRESUMESTANDBY

Requisitos

Requisito Valor
Cliente mínimo compatible
Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2003 [solo aplicaciones de escritorio]
Encabezado
WinUser.h (incluya Windows.h)

Consulte también