структура SYSTEM_POWER_STATUS (winbase.h)
Содержит сведения о состоянии питания системы.
Синтаксис
typedef struct _SYSTEM_POWER_STATUS {
BYTE ACLineStatus;
BYTE BatteryFlag;
BYTE BatteryLifePercent;
BYTE SystemStatusFlag;
DWORD BatteryLifeTime;
DWORD BatteryFullLifeTime;
} SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS;
Члены
ACLineStatus
Состояние питания переменного тока. Этот элемент может иметь одно из следующих значений.
Значение | Значение |
---|---|
|
Автономная миграция |
|
Миграция по сети |
|
Состояние "Неизвестно" |
BatteryFlag
Состояние заряда батареи. Этот элемент может содержать один или несколько следующих флагов.
Значение | Значение |
---|---|
|
Высокая — емкость аккумулятора составляет более 66 % |
|
Низкий — емкость батареи составляет менее 33 процентов. |
|
Критический — емкость батареи составляет менее пяти процентов |
|
Зарядки |
|
Без системного аккумулятора |
|
Неизвестное состояние — не удается прочитать сведения о флаге батареи |
Значение равно нулю, если аккумулятор не заряжается и емкость аккумулятора находится в диапазоне от низкого до высокого.
BatteryLifePercent
Процент оставшегося полного заряда батареи. Этот элемент может быть значением в диапазоне от 0 до 100 или 255, если состояние неизвестно.
SystemStatusFlag
Состояние экономии заряда. Чтобы участвовать в экономии энергии, избегайте ресурсоемких задач при включенном экономии заряда. Чтобы получать уведомления при изменении этого значения, вызовите функцию RegisterPowerSettingNotification с guid параметра питания, GUID_POWER_SAVING_STATUS.
Значение | Значение |
---|---|
|
Экономия заряда отключена. |
|
Экономия заряда включена. Экономия энергии там, где это возможно. |
BatteryLifeTime
Оставшееся время работы батареи в секундах или –1, если оставшиеся секунды неизвестны или устройство подключено к сети переменного тока.
BatteryFullLifeTime
Количество секунд времени работы батареи при полной зарядке или –1, если полное время существования батареи неизвестно или если устройство подключено к сети переменного тока.
Комментарии
Система может только оценки BatteryFullLifeTime на основе вычислений BatteryLifeTime и BatteryLifePercent. Без интеллектуальных подсистем батареи это значение может быть недостаточно точным, чтобы быть полезным.
Требования
Минимальная версия клиента | Windows XP [только классические приложения] |
Минимальная версия сервера | Windows Server 2003 [только классические приложения] |
Верхняя часть | winbase.h (включая Windows.h) |