Поделиться через


функция обратного вызова BCLASS_QUERY_STATUS_CALLBACK (batclass.h)

BatteryMiniQueryStatus возвращает сведения о состоянии данного устройства батареи.

Синтаксис

BCLASS_QUERY_STATUS_CALLBACK BclassQueryStatusCallback;

NTSTATUS BclassQueryStatusCallback(
  [in]  PVOID Context,
  [in]  ULONG BatteryTag,
  [out] PBATTERY_STATUS BatteryStatus
)
{...}

Параметры

[in] Context

Указатель на область контекста, выделенную драйвером мини-класса для устройства батареи.

[in] BatteryTag

Значение тега батареи, ранее возвращенное BatteryMiniQueryTag.

[out] BatteryStatus

Указатель на BATTERY_STATUS структуру, в которой драйвер мини-класса возвращает сведения.

Возвращаемое значение

BatteryMiniQueryStatus возвращает одно из следующих элементов:

Код возврата Описание
STATUS_SUCCESS
Батарея, назначенная BatteryTag, в настоящее время установлена.
STATUS_NO_SUCH_DEVICE
Батарея, назначенная BatteryTag, отсутствует.

Комментарии

Драйвер класса батареи вызывает BatteryMiniQueryStatus , чтобы получить сведения о состоянии батареи. Сведения о состоянии включают состояние питания батареи, емкость, напряжение и объем текущего потока во время запроса.

Если драйвер мини-класса не предоставляет полностью функциональные процедуры BatteryMiniSetStatusNotify и BatteryMiniDisableStatusNotify , драйвер класса батареи вызывает BatteryMiniQueryStatus через регулярные, но редкие интервалы для опроса состояния батареи. В противном случае драйвер класса вызывает эту подпрограмму после того, как драйвер мини-класса уведомит его об изменении состояния батареи.

Прежде чем сообщать о критически низком заряде аккумулятора (BATTERY_DISCHARGING и BATTERY_CRITICAL), драйвер мини-класса должен убедиться, что проблема является законной (а не временной), и если да, то попытаться решить проблему. Возможные решения могут включать в себя переключение на питание переменного тока или другой аккумулятор. Когда драйвер мини-класса сообщает, что батарея критически важна и разрядка, система предполагает, что сбой батареи неизбежен, и готовится к отключению.

Требования

   
Целевая платформа Персональный компьютер
Верхняя часть batclass.h (включая Batclass.h)
IRQL PASSIVE_LEVEL

См. также раздел

BatteryClassStatusNotify

BatteryMiniDisableStatusNotify

BatteryMiniSetStatusNotify