我需要检测系统电源状态模式。准确地说,我需要一个在windows7从睡眠中唤醒时触发的事件。我已经在使用:
SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;但此事件的问题是,它会被引发四次:可能是在计算机进入睡眠模式时和计算机唤醒之后。我想要一个只在计算机唤醒时引发的事件。这方面有什么活动吗?
发布于 2013-08-13 18:14:43
SystemEvents.PowerModeChanged += OnPowerChange;
private void OnPowerChange(object s, PowerModeChangedEventArgs e)
{
switch ( e.Mode )
{
case PowerModes.Resume:
break;
case PowerModes.Suspend:
break;
}
}您可能应该阅读以下内容:http://msdn.microsoft.com/en-us/library/microsoft.win32.systemevents.powermodechanged.aspx
发布于 2013-08-13 18:07:23
您需要检查传递给事件的PowerModeChangedEventArgs的Mode属性。
来自MSDN:
Resume操作系统即将从挂起的state.StatusChange中恢复电源模式状态通知事件已由操作系统引发。这可能表示电池电量不足或正在充电、交流电源和电池之间的转换,或者操作系统即将挂起时系统电源状态的另一次更改。https://stackoverflow.com/questions/18206183
复制相似问题