BatteryClassInitializeDevice-Funktion (batclass.h)
Die BatteryClassInitializeDevice-Routine initialisiert ein neues Akkugerät für den Klassentreiber.
Syntax
NTSTATUS BATTERYCLASSAPI BatteryClassInitializeDevice(
[in] PBATTERY_MINIPORT_INFO MiniportInfo,
[out] PVOID *ClassData
);
Parameter
[in] MiniportInfo
Zeiger auf eine BATTERY_MINIPORT_INFO-Struktur .
[out] ClassData
Zeiger auf eine Position, an der BatteryClassInitializeDevice ein Handle zurückgibt, das in nachfolgenden Aufrufen von BatteryMiniXxx-Routinen verwendet werden soll.
Rückgabewert
BatteryClassInitializeDevice gibt STATUS_SUCCESS oder möglicherweise STATUS_INSUFFICIENT_RESOURCES zurück, wenn nicht genügend Arbeitsspeicher zum Speichern der Akku-Miniklassendaten verfügbar ist.
Hinweise
Akku-Miniklassentreiber müssen BatteryClassInitializeDevice aufrufen, um jedes Akkugerät zu registrieren und Daten über das Gerät und den Miniklassentreiber an den Akkuklassentreiber zu übergeben.
Diese Routine sollte im Rahmen der Geräteinitialisierung aufgerufen werden, in der Regel aus der AddDevice-Routine des Miniklassentreibers.
Das Kontextelement der BATTERY_MINIPORT_INFO-Struktur verweist auf einen Bereich, in dem die Klassen- und Miniklassentreiber Informationen über das Akkugerät und seine Treiber verwalten. Der Kontextbereich enthält in der Regel die ausgelagerte Geräteerweiterung aus der FDO und kann auch andere Informationen im Ermessen des Treiberschreibers enthalten.
Der Klassentreiber übergibt einen Zeiger auf den Kontextbereich in Aufrufen von Akku-Miniklassen-Treiberroutinen (BatteryMiniXxx-Routinen ). In ihren BatteryMiniXxx-Routinen sollten Miniklassentreiber die Geräteerweiterungsdaten über den übergebenen Zeiger lesen und schreiben.
Miniklassentreiber müssen die BATTERY_MINIPORT_INFO-Struktur verwenden, um Einstiegspunkte für alle BatteryMiniXxx-Routinen zu liefern.
Wenn BatteryClassInitializeDevice das Akkugerät erfolgreich initialisiert, ist der Aufrufer für den Aufruf der BatteryClassUnload-Funktion verantwortlich, um die Ressourcen für das Akkugerät freizugeben, wenn es nicht mehr verwendet wird.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | batclass.h (include Batclass.h) |
Bibliothek | Battc.lib |