Мое приложение (работающее как системная служба) имеет функцию, при которой дисплей по какой-то причине несколько раз «мигает». Это делается с помощью специального API, который позволяет получить доступ к элементу управления подсветкой. Это работает до сих пор. Но когда дисплей отключается из-за настройки «Отключить дисплей» в параметрах питания, кажется, что ничего не происходит (с точки зрения пользователя).
Поиск решения всегда заканчивался предложениями по использованию SendMessage, SendNotifyMessage или SetThreadExectionState. Эти функции не работают при вызове из системной службы (по крайней мере, в Windows Vista и более поздних версиях).
Я вполне уверен, что есть способы включить отображение, даже если нет возможности сделать это в контексте пользователя, потому что ни один пользователь не вошел в систему. Однако я не мог узнать, как это сделать. Я надеюсь, что вы можете мне помочь.
П.С .: Я пытался с (вспомогательным) приложением в пользовательском режиме и мог видеть, что оно работает, даже если рабочая среда локализована (Win + L). Единственная проблема, которая остается, заключается в том, что я не могу включить дисплей при работе в качестве службы, и ни один пользователь не вошел в систему.
Задача ещё не решена.
Других решений пока нет …