Прослушайте события WM_SYSCOMMAND
Я пишу небольшую программу на C++, которая должна реагировать на sc_screensaver
а также sc_monitorpower
событие.
это должно работать в фоновом режиме, следовательно, графический интерфейс не предназначен.
Так как у меня пока нет опыта работы с Windows API, я много борюсь с этим.
Уже много гуглил и нашел много подходов, которые либо я не понимаю, либо не работаю.
Кто-нибудь из вас может дать мне подсказку? Я читал о ловле wm_syscommand
но это кажется трудным, потому что у меня нет окна.
1 ответ
Единственный способ получить сообщения - это цикл сообщений и оконная процедура.
Если ваша программа не имеет видимого графического интерфейса, вы должны создать окно только для сообщений для этой цели, и ваш main
должен иметь код для его создания и прослушивания сообщений Windows (примечание: здесь "windows" относится к системе, а не к графическому интерфейсу).