Как отледить момент ухода в спящий режим?

Всем привет.

Есть задача отслеживания ухода компьютера в спящий режим. Нашел вот это стандартное решение:
SystemEvents.PowerModeChanged += OnPowerChange;

private void OnPowerChange(object s, PowerModeChangedEventArgs e) 
{
    switch ( e.Mode ) 
    {
        case PowerModes.Resume: 
        break;
        case PowerModes.Suspend:
        break;
    }
}


НО оно работает корректно только тогда, когда уходят в спящий режим по кнопке. Когда в автоматическом режиме уходим в спящий режим, то код не выполняется.

Помогите найти железное решение, которое точно позволит отследить момент ухода в спящий режим.

Спасибо. :)
  • Вопрос задан
  • 701 просмотр
Решения вопроса 1
@Melz
Штуку с System.Management.ManagementEventWatcher пробовали?
Как альтернативу можно предложить лочить сессию пользователя при уходе в сон и ловить OnSessionSwitch - SessionSwitchReason.SessionLock.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы