В Windows только целевое приложение получает события питания дисплея через сообщение WM_SYSCOMMAND
(с wParam
, установленным на SC_MONITORPOWER
и lParam
, представляющим новое состояние питания).
В Windows Vista и более поздних версиях любое приложение может получать уведомления о событиях питания дисплея, вызывая функцию RegisterPowerSettingNotification
, используя GUID_SESSION_DISPLAY_STATUS
GUID .
Есть ли способ добиться того же результата в Windows XP на уровне приложений (т.е. без использования кода, работающего в режиме ядра)?