Гибернация из С# против гибернации из закрытой крышки — проблема с пробуждением

У меня проблема со спящим режимом и событиями пробуждения. Когда я перехожу в спящий режим, используя код С#

Application.SetSuspendState(PowerState.Hibernate, true, false);

все работает нормально и компьютер просыпается по событиям. Проблема в том, что когда я просто закрываю крышку с гибернацией в качестве действия. В этом случае компьютер так и не вернулся, и единственный способ запустить его — нажать кнопку питания. Конечно, я мог бы отключить действие закрытия крышки и всегда переходить в спящий режим с помощью приложения, но это не лучшее решение.

Я хотел бы знать, в чем разница между этими двумя гибернациями. Я думал, что это должно быть то же самое, но, похоже, это не так. Есть ли способ изменить действие спящего режима на закрытой крышке, чтобы оно работало так же, как это вызывается из кода С#?


person Artur S    schedule 25.12.2015    source источник


Ответы (1)


Я обнаружил, что после гибернации от кода, когда крышка была открыта, компьютер просыпался в запланированное время, однако с закрытой крышкой компьютер пытался включиться, но сразу выключался, независимо от того, был ли он переведен в спящий режим от кода или нет. Я заметил это, когда мой ноутбук заряжался, и индикатор зарядки горел. Когда я включаю его, этот светодиод гаснет на секунду, а затем возвращается обратно. То же самое произошло с закрытой крышкой в ​​назначенное время.

Кажется, что ключом здесь является состояние крышки (открыто/закрыто).

person Artur S    schedule 08.01.2016