Derell Licht Ответов: 1

Как программно обнаружить возвращение из гашения экрана


Я хотел бы обнаружить в своей программе, когда пустой экран выключен.

Что я уже пробовал:

Я использую C++, и моя целевая платформа-Windows 7.
У меня есть изрядный опыт в программировании WinAPI.

Я хотел бы обнаружить в своей программе, когда пустой экран выключен.
Это не заставка, а сама операция гашения экрана.
(то есть на моей текущей машине у меня установлена заставка "нет", а "выключить дисплей" - 15 минут. Именно "включить дисплей" я и хочу обнаружить.).

Может ли кто-нибудь дать мне совет, какое сообщение или событие искать, чтобы справиться с этой задачей?

Derell Licht

К сожалению, функции управления питанием, похоже, не работают для Windows 7,
только Win8 и более поздние версии. Он скомпилирован и работает нормально, но на самом деле не работает.

1 Ответов

Рейтинг:
2

Derell Licht

Хорошо, я нашел решение, которое работает с Windows 7 64bit.
Я действую на WM_SYSCOLORCHANGE ... Возможно, это немного перебор, но поскольку я пытаюсь обновить цвета значков рабочего стола всякий раз, когда они сбрасываются, это, похоже, работает довольно хорошо...

У меня есть бесплатное (32-битное) приложение, которое использует эту технику для восстановления цвета значка рабочего стола всякий раз, когда он изменяется (я надеюсь).

Приложение доступно здесь:
[^]

исходный код находится здесь:
GitHub-DerellLicht/ClearIcon: программа, которая сидит в трее уведомлений, пытается сохранить набор цветов значков рабочего стола[^]