Функция BatteryClassInitializeDevice (batclass.h)
Подпрограмма BatteryClassInitializeDevice инициализирует новое устройство батареи для драйвера класса.
Синтаксис
NTSTATUS BATTERYCLASSAPI BatteryClassInitializeDevice(
[in] PBATTERY_MINIPORT_INFO MiniportInfo,
[out] PVOID *ClassData
);
Параметры
[in] MiniportInfo
Указатель на структуру BATTERY_MINIPORT_INFO .
[out] ClassData
Указатель на расположение, в котором BatteryClassInitializeDevice возвращает дескриптор , который будет использоваться в последующих вызовах подпрограмм BatteryMiniXxx .
Возвращаемое значение
BatteryClassInitializeDevice возвращает STATUS_SUCCESS или, возможно, STATUS_INSUFFICIENT_RESOURCES, если недостаточно памяти для хранения данных миникласса батареи.
Комментарии
Драйверы мини-класса батареи должны вызывать BatteryClassInitializeDevice , чтобы зарегистрировать каждое устройство батареи и передать данные об устройстве и драйвере мини-класса в драйвер класса батареи.
Эта подпрограмма должна вызываться в рамках инициализации устройства, как правило, из подпрограммы AddDevice драйвера мини-класса.
Элемент контекста структуры BATTERY_MINIPORT_INFO указывает на область, в которой драйверы класса и мини-класса содержат сведения об устройстве батареи и его драйверах. Область контекста обычно содержит расширение для страничного устройства из FDO, а также может включать другие сведения по усмотрению модуля записи драйверов.
Драйвер класса передает указатель на область контекста в вызовах подпрограмм драйвера миникласса батареи (подпрограммы BatteryMiniXxx ). В подпрограммах BatteryMiniXxx драйверы мини-класса должны считывать и записывать данные расширения устройства через переданный указатель.
Драйверы мини-класса должны использовать структуру BATTERY_MINIPORT_INFO для предоставления точек входа для всех подпрограмм BatteryMiniXxx .
Если BatteryClassInitializeDevice успешно инициализирует устройство батареи, вызывающий объект отвечает за вызов функции BatteryClassUnload , чтобы освободить ресурсы для устройства батареи, когда оно больше не используется.
Требования
Требование | Значение |
---|---|
Целевая платформа | Персональный компьютер |
Верхняя часть | batclass.h (включая Batclass.h) |
Библиотека | Battc.lib |