BATTERY_INFORMATION構造体

バッテリー情報が含まれます。 この構造体は、BatteryInformation 情報レベルが要求されたときに 、IOCTL_BATTERY_QUERY_INFORMATION コントロール コードによって返されます。

構文

typedef struct _BATTERY_INFORMATION {
  ULONG Capabilities;
  UCHAR Technology;
  UCHAR Reserved[3];
  UCHAR Chemistry[4];
  ULONG DesignedCapacity;
  ULONG FullChargedCapacity;
  ULONG DefaultAlert1;
  ULONG DefaultAlert2;
  ULONG CriticalBias;
  ULONG CycleCount;
} BATTERY_INFORMATION, *PBATTERY_INFORMATION;

メンバー

Capabilities

バッテリー機能。 このメンバーには、次の値の 1 つ以上を指定できます。

説明
BATTERY_CAPACITY_RELATIVE
0x40000000
バッテリ容量とレート情報が相対的であり、特定の単位ではないことを示します。 このビットが設定されていない場合、レポート単位は容量の場合はミリワット時 (mWh)、レートの場合はミリワット (mW) です。 このビットが設定されている場合、他のバッテリ ドキュメントのユニットへの参照はすべて無視できます。 すべての料金情報は、1 時間あたりの単位で報告されます。 たとえば、完全に充電された容量が 100 と報告された場合、200 のレートは、バッテリーが 30 分ですべての容量を使用することを示します。
BATTERY_IS_SHORT_TERM
0x20000000
通常の操作がフェールセーフ関数用であることを示します。 このビットが設定されていない場合は、通常のシステム使用中にバッテリが使用されることが想定されます。
BATTERY_SET_CHARGE_SUPPORTED
0x00000001
BatteryCharge 型の設定情報要求がこのバッテリ デバイスでサポートされていることを示します。
BATTERY_SET_DISCHARGE_SUPPORTED
0x00000002
BatteryDischarge 型の設定情報要求がこのバッテリ デバイスでサポートされていることを示します。
BATTERY_SYSTEM_BATTERY
0x80000000
バッテリがシステムを実行するための一般的な電源を提供できることを示します。

テクノロジ

バッテリー技術。 このメンバーには、次のいずれかの値を指定できます。

説明
0
非充電電池は、例えばアルカリ性である。
1
充電式電池は、例えば鉛酸である。

Reserved

予約済み。

Chemistry

バッテリーの化学を示す省略形の文字列。 この文字列は必ずしも 0 で終わるとは限りません。 返すことができる省略形と関連する化学の一部の一覧を次に示します。

Unicode 文字列 説明
PbAc
鉛酸
ライオン
リチウムイオン
Li-I
リチウムイオン
ニッカド
ニッケルカドミウム
ニッケル 水素
ニッケル金属水素化物
Nizn
ニッケル亜鉛
RAM
充電式Alkaline-Manganese

他の化学は将来出現する可能性があり、コードで処理できる必要があります。

DesignedCapacity

新規時のバッテリの理論容量(BATTERY_CAPACITY_RELATIVEが設定されていない限りmWh)。 その場合、単位は未定義です。

FullChargedCapacity

バッテリの現在の完全充電容量 (または相対)。 この値を DesignedCapacity と比較して、バッテリの摩耗を推定します。

DefaultAlert1

バッテリ残量が少ないアラートが発生する製造元の推奨容量 (mWh)。 低の定義は製造元によって異なります。 一般に、警告状態は低い状態の前に発生しますが、常に警告状態であると想定しないでください。 データ損失のリスクを軽減するために、この値は通常、重要なバッテリ アラームの既定の設定として使用されます。

DefaultAlert2

警告バッテリー アラートが発生する必要がある製造元の推奨容量 (mWh)。 警告の定義は製造元によって異なります。 一般に、警告状態は低い状態の前に発生しますが、常に警告状態であると想定しないでください。 データ損失のリスクを軽減するために、この値は通常、バッテリ残量の少ないアラームの既定の設定として使用されます。

CriticalBias

バッテリレポートに適用される、0 から mWh のバイアス。 一部のバッテリでは、バッテリの容量値からバイアスされた小さな充電が予約され、"0" が重要なバッテリ レベルとして表示されます。 クリティカル バイアスは、数リットルの燃料が残っている場合に"空"を示す燃料ゲージを設定する場合に似ています。

CycleCount

バッテリが発生した充電/放電サイクルの数。 これにより、バッテリの摩耗を判断する手段が提供されます。 バッテリーがサイクル カウンターをサポートしていない場合、このメンバーは 0 です。

注釈

一般に、警告状態は低い状態の前に発生しますが、警告状態は想定しないでください。 バッテリーをポーリングし、どちらのアラート レベルも発生していないと検出し、バッテリーをもう一度ポーリングして、両方のレベルが達成された程度に放電していることがわかります。 これは、ポーリング頻度が十分ではないことを示している可能性があります。 また、バッテリが非常に長い間充電を保持できず、予想よりも急速に放電していることを示している可能性もあります。 このようなバッテリーは、寿命の終わりに近いか、破損している可能性があります。

要件

要件
サポートされている最小のクライアント
Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
Header
Poclass.h;
Windows Server 2008 R2、Windows 7、Windows Server 2008、Windows Vista、Windows Server 2003、Windows XP の Batclass.h

こちらもご覧ください

IOCTL_BATTERY_QUERY_INFORMATION