BCLASS_SET_INFORMATION_CALLBACK回调函数 (batclass.h)

BatteryMiniSetInformation 请求电池进入充电或放电状态,或者为电池设置临界偏置值。

语法

BCLASS_SET_INFORMATION_CALLBACK BclassSetInformationCallback;

NTSTATUS BclassSetInformationCallback(
  [in] PVOID Context,
  [in] ULONG BatteryTag,
  [in] BATTERY_SET_INFORMATION_LEVEL Level,
  [in] PVOID Buffer
)
{...}

参数

[in] Context

指向由微型类驱动程序为电池设备分配的上下文区域的指针。

[in] BatteryTag

以前由 BatteryMiniQueryTag 返回的电池标记值。

[in] Level

以下值之一: BatteryCriticalBiasBatteryChargeBatteryDischarge。

[in] Buffer

如果 LevelBatteryCriticalBias,则以毫瓦为单位的临界偏差调整。 不用于 Level 的其他值。

返回值

BatteryMiniSetInformation 返回下列值之一:

返回代码 说明
STATUS_SUCCESS
操作成功。
STATUS_NO_SUCH_DEVICE
没有电池。
STATUS_NOT_SUPPORTED
指定的电池不支持请求的操作。
STATUS_UNSUCCESSFUL
此操作失败。

注解

电池类驱动程序调用 BatteryMiniSetInformation 以请求电池开始充电或放电。 它还可以调用此例程来设置严重偏差值。

使用智能电池充电器/选择器,类驱动程序指定 BatteryCharge 以选择要充电的电池,可能会停止为另一个电池充电。

类驱动程序指定 BatteryDischarge 以指示应为系统供电的电池。

关键偏差调整类似于汽车油箱的储量。 它表示电池容量报告为零时的剩余电量。 尽管类驱动程序不会在正常使用中更改临界偏差值,但此字段在接口中作为维护功能提供。 并非所有电池都可以保持临界偏差设置。 此类电池的微型类驱动程序应返回STATUS_NOT_SUPPORTED。

要求

要求
目标平台 桌面
标头 batclass.h (包括 Batclass.h)
IRQL PASSIVE_LEVEL