2010-07-04 4 views
3

У меня есть служба Windows, всегда работающая после запуска ПК, как бы я обнаружил, используя .NET 3.5 или WMI, когда пользователь или другое приложение/процесс запросили выключение или перезагрузку в Windows.Обнаружение события выключения Windows

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

Спасибо

ответ

0

Win32. Событие SessionEnded активируется, когда система отключается. Вы должны добавить это в свою программу.

3

Используйте событие Microsoft.Win32.SystemEvents.SessionEnding.

Однако обратите внимание, что вы находитесь в службе Windows, и это событие не будет срабатывать для вас, если вы не создадите скрытую форму в своей службе. Вы можете получить один из них бесплатно, включив опцию «Взаимодействовать с рабочим столом» в службе.

1

Вы ищете событие SystemEvents.SessionEnding.

Происходит, когда пользователь пытается зарегистрировать выключить или выключить систему.

Смежные вопросы