Как отслеживать выключения системы с помощью WINAPI? - PullRequest
0 голосов
/ 14 февраля 2011

Я написал службу Windows, которая должна записывать любые отключения системы. WINAPI предоставляет SERVICE_CONTROL_PRESHUTDOWN (Vista и выше) и SERVICE_CONTROL_SHUTDOWN. Но ни один из них не запускается в моем обработчике управления службами, который был ранее зарегистрирован в RegisterServiceCtrlHandlerEx (). В частности, при перезагрузке системы ему ничего не передается. Сам обработчик работает, так как SERVICE_CONTROL_STOP и т. Д. Запускается правильно.

Есть ли другой способ отслеживать выключения системы вместо использования обработчика управления службами?

1 Ответ

1 голос
/ 15 февраля 2011

Вам необходимо вызвать SetServiceStatus, передавая SERVICE_ACCEPT_SHUTDOWN / SERVICE_ACCEPT_PRESHUTDOWN, чтобы получить элементы управления выключением.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...