다음을 통해 공유


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

배터리 기능. 이 멤버는 다음 값 중 하나 이상일 수 있습니다.

의미
BATTERY_CAPACITY_RELATIVE
0x40000000
배터리 용량 및 속도 정보가 특정 단위가 아니라 상대적임을 나타냅니다. 이 비트가 설정되지 않은 경우 보고 단위는 용량의 경우 밀리와트시(mWh)이고 속도는 mW(밀리와트)입니다. 이 비트를 설정하면 다른 배터리 설명서의 단위에 대한 모든 참조를 무시할 수 있습니다. 모든 속도 정보는 시간당 단위로 보고됩니다. 예를 들어 완전히 충전된 용량이 100으로 보고되면 200의 속도는 배터리가 모든 용량을 반 시간 안에 사용한다는 것을 나타냅니다.
BATTERY_IS_SHORT_TERM
0x20000000
정상 작업이 장애 조치(fail-safe) 함수에 대한 것임을 나타냅니다. 이 비트를 설정하지 않으면 정상적인 시스템 사용 중에 배터리가 사용되어야 합니다.
BATTERY_SET_CHARGE_SUPPORTED
0x00000001
BatteryCharge 유형의 설정 정보 요청이 이 배터리 디바이스에서 지원됨을 나타냅니다.
BATTERY_SET_DISCHARGE_SUPPORTED
0x00000002
BatteryDischarge 유형의 설정 정보 요청이 이 배터리 디바이스에서 지원됨을 나타냅니다.
BATTERY_SYSTEM_BATTERY
0x80000000
배터리가 시스템을 실행하는 일반적인 전원을 제공할 수 있음을 나타냅니다.

기술

배터리 기술. 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
0
충전할 수 없는 배터리(예: 알칼리성).
1
충전식 배터리(예: 납산).

Reserved

예약되어 있습니다.

Chemistry

배터리의 화학을 나타내는 약어 문자 문자열입니다. 이 문자열이 반드시 0으로 끝나는 것은 아닙니다. 다음은 반환할 수 있는 약어 및 관련 화학의 부분 목록입니다.

유니코드 문자열 의미
PbAc
납축
사자
리튬 이온
Li-I
리튬 이온
Nicd
니켈 카드미움
Nimh
니켈 금속 하이드라이드
Nizn
니켈 아연
RAM
충전식 Alkaline-Manganese

다른 화학은 미래에 나타날 수 있으며 코드는 이를 처리할 수 있어야 합니다.

DesignedCapacity

BATTERY_CAPACITY_RELATIVE 설정되지 않은 경우 새 배터리의 이론적 용량(mWh)입니다. 이 경우 단위는 정의되지 않습니다.

FullChargedCapacity

배터리의 현재 완전 충전 용량은 mWh(또는 상대)입니다. 이 값을 DesignedCapacity와 비교하여 배터리 마모를 예측합니다.

DefaultAlert1

배터리 부족 경고가 발생해야 하는 제조업체의 제안된 용량(mWh)입니다. 낮은 정의는 제조업체마다 다릅니다. 일반적으로 경고 상태는 낮은 상태 이전에 발생하지만 항상 그렇게 가정해서는 안 됩니다. 데이터 손실 위험을 줄이기 위해 이 값은 일반적으로 중요한 배터리 경보의 기본 설정으로 사용됩니다.

DefaultAlert2

제조업체가 제안한 용량(mWh)으로, 경고 배터리 경고가 발생해야 합니다. 경고 정의는 제조업체마다 다릅니다. 일반적으로 경고 상태는 낮은 상태 이전에 발생하지만 항상 그렇게 가정해서는 안 됩니다. 데이터 손실 위험을 줄이기 위해 이 값은 일반적으로 배터리 부족 경보의 기본 설정으로 사용됩니다.

CriticalBias

배터리 보고에 적용되는 0부터의 바이어스(mWh)입니다. 일부 배터리는 배터리의 용량 값에서 편향된 작은 충전을 예약하여 "0"을 중요한 배터리 수준으로 표시합니다. 중요한 편견은 연료가 몇 리터 남았을 때 "빈"을 표시하도록 연료 게이지를 설정하는 것과 유사합니다.

CycleCount

배터리가 경험한 충전/방전 주기의 수입니다. 이렇게 하면 배터리의 마모를 확인할 수 있습니다. 배터리가 주기 카운터를 지원하지 않는 경우 이 멤버는 0입니다.

설명

일반적으로 경고 상태는 낮은 상태 이전에 발생하지만 그렇게 가정해서는 안 됩니다. 배터리를 폴링하고 경고 수준이 발생하지 않은 것을 발견하고 배터리를 다시 폴링하고 두 수준이 모두 달성된 범위까지 방전된 것을 찾을 수 있습니다. 이는 충분히 자주 폴링하지 않음을 나타낼 수 있습니다. 또한 배터리가 매우 오랫동안 충전을 유지할 수 없으며 예상보다 더 빠르게 방전되고 있음을 나타낼 수 있습니다. 이러한 배터리는 유용 수명이 거의 끝나거나 손상될 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트
Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버
Windows Server 2003 [데스크톱 앱만 해당]
헤더
Poclass.h;
Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 및 Windows XP의 Batclass.h

추가 정보

IOCTL_BATTERY_QUERY_INFORMATION