BATTERY_STATUS 结构

包含电池的当前状态。 此结构由 IOCTL_BATTERY_QUERY_STATUS 控件代码使用。

语法

typedef struct _BATTERY_STATUS {
  ULONG PowerState;
  ULONG Capacity;
  ULONG Voltage;
  LONG  Rate;
} BATTERY_STATUS, *PBATTERY_STATUS;

成员

PowerState

电池状态。 此成员可以是零、一个或多个以下值。

含义
BATTERY_CHARGING
0x00000004
指示电池当前正在充电。
BATTERY_CRITICAL
0x00000008
指示电池即将发生故障。 有关详细信息,请参阅备注部分。
BATTERY_DISCHARGING
0x00000002
指示电池当前正在放电。
BATTERY_POWER_ON_LINE
0x00000001
指示系统可以访问交流电源,因此没有电池正在耗尽。

容量

当前电池容量,以 mWh (或相对) 为单位。 此值可用于生成“气体仪表”显示,方法是将其除以 BATTERY_INFORMATION 结构的 FullChargedCapacity 成员。 如果容量不可用,则此成员BATTERY_UNKNOWN_CAPACITY。

电压

电池终端上的当前电池电压,以毫伏为单位 (mv) 。 如果电压不可用,则此成员BATTERY_UNKNOWN_VOLTAGE。

费率

电池充电或放电的当前速率。 此值将以毫瓦为单位,除非电池速率信息是相对的,在这种情况下,它将以任意单位/小时为单位。 若要确定电池信息是否是相对信息,请检查BATTERY_INFORMATION结构的 “功能” 成员中的 BATTERY_CAPACITY_RELATIVE 标志。 非零正率表示充电;负速率指示已解除。 某些电池仅报告放电率。 如果速率不可用,则此成员BATTERY_UNKNOWN_RATE。 如果电池或电源的状态发生更改,速率可能会变为可用。

备注

此结构的 PowerState 成员中的BATTERY_CRITICAL标志指示硬件“电池严重”状况。 此临界级别由电池制造商设置,而不是由“关键电池警报”中的用户设置。这通常意味着电池系统已计算出电池已完全耗尽,并且所消耗的任何功率都超出预期。

要求

要求
最低受支持的客户端
Windows XP [仅限桌面应用]
最低受支持的服务器
Windows Server 2003 [仅限桌面应用]
标头
Poclass.h;
Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP 上的 Batclass.h

另请参阅

BATTERY_INFORMATION

IOCTL_BATTERY_QUERY_STATUS