BATTERY_SET_INFORMATION 结构

包含要设置的电池信息。 此结构与 IOCTL_BATTERY_SET_INFORMATION 控件代码一起使用。

语法

typedef struct _BATTERY_SET_INFORMATION {
  ULONG                         BatteryTag;
  BATTERY_SET_INFORMATION_LEVEL InformationLevel;
  UCHAR                         Buffer[1];
} BATTERY_SET_INFORMATION, *PBATTERY_SET_INFORMATION;

成员

BatteryTag

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

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

InformationLevel

要设置的电池信息。 Buffer 成员中的数据类型取决于此成员的值。 此成员可以是以下值之一。

含义
BatteryCharge
1
通知电池设备用户已请求电池此时应充电。 例如,使用智能电池/充电器/选择器,应用程序可以一次为一个电池充电。 忽略此结构的 Buffer 成员。
BatteryCriticalBias
0
设置电池的严重偏差调整。 请注意,此值通常不会由软件更改,并且仅作为维护功能存在于接口中。 并非所有电池都可以保持此类设置,应读取电池信息以确认电池是否接受该设置。
BatteryDischarge
2
通知电池设备用户已请求电池此时正在耗尽。 例如,这可用于指示用户当前希望为系统供电的电池。 忽略此结构的 Buffer 成员。

Buffer

要设置的电池信息。 数据取决于 InformationLevel 的值。

备注

BATTERY_SET_INFORMATION 结构是长度可变的结构,必须为要包含在结构中的信息分配适当大小的缓冲区。

要求

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

另请参阅

IOCTL_BATTERY_SET_INFORMATION