BATTERY_QUERY_INFORMATION 结构

包含电池查询信息。 此结构与 IOCTL_BATTERY_QUERY_INFORMATION 控件代码一起使用,以指定要返回的信息类型。

语法

typedef struct _BATTERY_QUERY_INFORMATION {
  ULONG                           BatteryTag;
  BATTERY_QUERY_INFORMATION_LEVEL InformationLevel;
  LONG                            AtRate;
} BATTERY_QUERY_INFORMATION, *PBATTERY_QUERY_INFORMATION;

成员

BatteryTag

电池的当前电池标记。 只能返回与标记匹配的电池的信息。 每当此值与电池的当前标记不匹配时,IOCTL 请求将以ERROR_FILE_NOT_FOUND完成。 这向调用方指示与标记关联的电池存在时间较长。 调用方可以选择使用 IOCTL_BATTERY_QUERY_TAG 操作来确定新安装的电池的标记(如果存在)。 (有关详细信息,请参阅 电池标记 。)

发出查询信息请求时,将验证此值。 此外,如果在此值更改时请求正在进行,则请求将中止,状态为 ERROR_FILE_NOT_FOUND。

InformationLevel

正在查询的电池信息的级别。 IOCTL 返回的数据取决于此值。 此成员可以是以下值之一。

含义
BatteryDeviceName
4
包含电池名称的以 Null 结尾的 Unicode 字符串。
BatteryEstimatedTime
3
一个 ULONG ,指定估计的电池运行时间(以秒为单位)。 如果 BATTERY_QUERY_INFORMATION 结构的 AtRate 成员中提供的排出速率为零,则此计算基于当前的排出速率。 如果 AtRate 为非零,则返回的时间是给定速率的预期运行时间。 例如,如果估计时间未知 (电池未放电且指定的 AtRate) 为零,则返回值BATTERY_UNKNOWN_TIME。 请注意,此值在某些电池系统上不是非常准确,并且可能会因当前电源使用情况而有很大差异,这可能会受到磁盘活动和其他因素的影响。 此值中没有更改的通知机制。
BatteryGranularityInformation
1
一个BATTERY_REPORTING_SCALE结构的数组,不能超过四个条目。
BatteryInformation
0
BATTERY_INFORMATION结构。
BatteryManufactureDate
5
BATTERY_MANUFACTURE_DATE结构。
BatteryManufactureName
6
以 Null 结尾的 Unicode 字符串,指定电池制造商的名称。
BatterySerialNumber
8
以 Null 结尾的 Unicode 字符串,用于指定电池的序列号。
BatteryTemperature
2
一个 ULONG ,指定电池的当前温度,以 10 度开氏度为单位。
BatteryUniqueID
7
唯一标识电池的以 Null 结尾的 Unicode 字符串。 此值可用于跟踪特定电池。 对于智能电池,此 ID 将是制造商名称、设备名称、制造日期以及序列号的可打印表示形式。
此值不应显示给用户。

AtRate

仅当 InformationLevel 为 BatteryEstimatedTime 时,才使用此成员。

如果此成员为非零值,则消耗率将用于计算单个电池的 BatteryEstimatedTime 电池耗尽前的时间。 它必须以 mW 为单位指定,并且必须是负值才能表示电池放电率。

备注

有关电池的某些信息是可选的,或者对于某些电池来说可能毫无意义。 如果请求的特定类型的数据不适用于当前电池,则返回ERROR_INVALID_FUNCTION。

要求

要求
最低受支持的客户端
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

BATTERY_MANUFACTURE_DATE

BATTERY_REPORTING_SCALE

IOCTL_BATTERY_QUERY_INFORMATION

IOCTL_BATTERY_QUERY_TAG