Как проверить, когда компьютер находится в спящем режиме или просыпается? - PullRequest
15 голосов
/ 13 октября 2009

Я хочу, чтобы моя программа знала, что компьютер находится в спящем режиме или просыпается ото сна, возможно, имеет место событие, которое запускается при возникновении любого из них. Возможно ли это?

1 Ответ

25 голосов
/ 13 октября 2009

Вы можете подписаться на событие SystemEvents.PowerModeChanged .

SystemEvents.PowerModeChanged += OnPowerChange;

void OnPowerChange(Object sender, PowerModeChangedEventArgs e) {
  switch ( e.Mode ) {
    case PowerModes.Resume: 
      ...
    case PowerModes.Suspend:
      ...
  }
}
...