一. 背光:
[HKEY_CURRENT_USERControlPanelBacklight]
ACTimeout: 表示接AC电源时自动关闭背景光的时间,不自动关闭背景光时些项不存在
UseExt: 接外部电源时是否启用自动关闭背景光,0:不启动,1:启用
BatteryTimeout: 表示使用电池电源进自动关闭背景光的时间,不自动关闭背景光时些项不存在
UseBattery: 接电池电源时是否启用自动关闭背景光,0:不启动,1:启用
Brightness: 表示背光亮度的百分比
二. 电源:
[HKEY_LOCAL_MACHINESystemCurrentControlSetControlPowerTimeouts]
ACSuspend: 表示接AC电源时自动挂起的时间
BattSuspend: 表示接电池电源时自动挂起的时间
获取电源状态:
SYSTEM_POWER_STATUS_EX2 sps;
GetSystemPowerStatusEx2(&sps, sizeof(sps), FALSE);
switch(sps.ACLineStatus)
{
case AC_LINE_OFFLINE:
wcscpy(ACLineStatus,TEXT("电池电源"));
break;
case AC_LINE_ONLINE:
wcscpy(ACLineStatus,TEXT("AC电源"));
break;
case AC_LINE_BACKUP_POWER:
wcscpy(ACLineStatus,TEXT("备份电源"));
break;
case AC_LINE_UNKNOWN:
wcscpy(ACLineStatus,TEXT("未知电源"));
break;
}
switch(sps.BatteryFlag)
{
case BATTERY_FLAG_HIGH:
wcscpy(BatteryFlag,TEXT("电池较满"));
break;
case BATTERY_FLAG_LOW:
wcscpy(BatteryFlag,TEXT("电池较少"));
break;
case BATTERY_FLAG_CRITICAL:
wcscpy(BatteryFlag,TEXT("电池不足"));
break;
case BATTERY_FLAG_CHARGING:
wcscpy(BatteryFlag,TEXT("正在充电"));
break;
case BATTERY_FLAG_NO_BATTERY:
wcscpy(BatteryFlag,TEXT("没有电池"));
break;
case BATTERY_FLAG_UNKNOWN:
wcscpy(BatteryFlag,TEXT("未知电池"));
break;
}