BCLASS_QUERY_STATUS_CALLBACK Rückruffunktion (batclass.h)
BatteryMiniQueryStatus gibt status Informationen zum angegebenen Akkugerät zurück.
Syntax
BCLASS_QUERY_STATUS_CALLBACK BclassQueryStatusCallback;
NTSTATUS BclassQueryStatusCallback(
[in] PVOID Context,
[in] ULONG BatteryTag,
[out] PBATTERY_STATUS BatteryStatus
)
{...}
Parameter
[in] Context
Ein Zeiger auf den Kontextbereich, der vom Miniklassentreiber für das Akkugerät zugewiesen wird.
[in] BatteryTag
Ein Akkutagwert, der zuvor von BatteryMiniQueryTag zurückgegeben wurde.
[out] BatteryStatus
Ein Zeiger auf eine BATTERY_STATUS Struktur, in der der Miniklassentreiber Informationen zurückgibt.
Rückgabewert
BatteryMiniQueryStatus gibt eine der folgenden Rückgaben zurück:
Rückgabecode | Beschreibung |
---|---|
|
Der von BatteryTag angegebene Akku ist derzeit installiert. |
|
Der von BatteryTag angegebene Akku ist nicht vorhanden. |
Hinweise
Der Akkuklassentreiber ruft BatteryMiniQueryStatus auf, um status Informationen zum Akku abzurufen. Die status Informationen umfassen den Stromzustand, die Kapazität, die Spannung und die Strommenge, die zum Zeitpunkt der Anforderung fließt.
Wenn der Miniklassentreiber keine voll funktionsfähigen BatteryMiniSetStatusNotify- und BatteryMiniDisableStatusNotify-Routinen liefert, ruft der Akkuklassentreiber BatteryMiniQueryStatus in regelmäßigen, aber seltenen Abständen auf, um die status des Akkus abzufragen. Andernfalls ruft der Klassentreiber diese Routine auf, nachdem der Miniklassentreiber ihn über eine Änderung der Batterie status benachrichtigt hat.
Bevor der Miniklassentreiber einen kritisch niedrigen, entladenden Akku (BATTERY_DISCHARGING und BATTERY_CRITICAL) meldet, sollte der Miniklassentreiber sicherstellen, dass das Problem legitim ist (und nicht ein vorübergehender Zustand), und wenn ja, sollte versucht werden, das Problem zu lösen. Mögliche Lösungen sind der Wechsel auf Wechselstrom oder eine andere Batterie. Wenn der Miniklassentreiber meldet, dass eine Batterie kritisch ist und entladen wird, geht das System davon aus, dass ein Akkuausfall unmittelbar bevorsteht, und bereitet sich auf das Herunterfahren vor.
Anforderungen
Zielplattform | Desktop |
Kopfzeile | batclass.h (include Batclass.h) |
IRQL | PASSIVE_LEVEL |