The SYSTEM_POWER_STATUS structure contains information about the power status of the system.
typedef struct _SYSTEM_POWER_STATUS {
BYTE ACLineStatus;
BYTE BatteryFlag;
BYTE BatteryLifePercent;
BYTE Reserved1;
DWORD BatteryLifeTime;
DWORD BatteryFullLifeTime;
} SYSTEM_POWER_STATUS;
typedef struct SYSTEM_POWER_STATUS *LPSYSTEM_POWER_STATUS;
Members
ACLineStatus
AC power status. This parameter can be one of the following values:
Value | Meaning |
0 | Offline |
1 | Online |
255 | Unknown status. |
All other values are reserved.
BatteryFlag
Battery charge status. This parameter can be a combination of the following values:
Value | Meaning |
1 | High |
2 | Low |
4 | Critical |
8 | Charging |
128 | No system battery |
255 | Unknown status |
All other values are reserved.
BatteryLifePercent
Percentage of full battery charge remaining. This member can be a value in the range 0 to 100, or 255 if status is unknown. All other values are reserved.
Reserved1
Reserved; must be zero.
BatteryLifeTime
Number of seconds of battery life remaining, or 0xFFFFFFFF if remaining seconds are unknown.
BatteryFullLifeTime
Number of seconds of battery life when at full charge, or 0xFFFFFFFF if full lifetime is unknown.
Remarks
Windows 95 is only capable of estimating BatteryFullTime based on calculations on BatteryLifeTime and BatteryLifePercent. Without smart battery subsystems, this value may not be accurate enough to be useful.