Как программно перевести ноутбук в спящий режим - PullRequest
4 голосов
/ 29 декабря 2008

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

Спасибо за любые указатели.

Ответы [ 2 ]

10 голосов
/ 29 декабря 2008

Посмотрите на SystemInformation.PowerStatus, затем вы можете вызвать Application.SetSuspendState, чтобы перевести ПК в спящий или спящий режим, например:

Application.SetSuspendState(PowerState.Hibernate, true, true);
1 голос
/ 11 ноября 2012

Вы можете использовать API:

Declare Function SetSuspendState Lib "PowrProf" (ByVal Hibernate As Integer, ByVal ForceCritical As Integer, ByVal DisableWakeEvent As Integer) As Integer

SetSuspendState(0, 0, 0) 'Sleep without forcing and ?no? wake events
SetSuspendState(1, 0, 0) 'Hibernate without forcing and ?no? wake events

Установите Hibernate на 1 (True) на Hibernate или 0 (False) на Sleep.

См. API здесь .

...