Compartilhar via


estrutura BATTERY_QUERY_INFORMATION

Contém informações de consulta de bateria. Essa estrutura é usada com o código de controle IOCTL_BATTERY_QUERY_INFORMATION para especificar o tipo de informação a ser retornada.

Sintaxe

typedef struct _BATTERY_QUERY_INFORMATION {
  ULONG                           BatteryTag;
  BATTERY_QUERY_INFORMATION_LEVEL InformationLevel;
  LONG                            AtRate;
} BATTERY_QUERY_INFORMATION, *PBATTERY_QUERY_INFORMATION;

Membros

BatteryTag

A marca da bateria atual para a bateria. Somente informações para uma bateria que corresponda à marca podem ser retornadas. Sempre que esse valor não corresponder à marca atual da bateria, a solicitação IOCTL será concluída com ERROR_FILE_NOT_FOUND. Isso indica ao chamador que a bateria associada à marca existe por mais tempo. O chamador pode optar por usar a operação IOCTL_BATTERY_QUERY_TAG para determinar a marca da bateria recém-instalada, se houver uma. (Consulte Marcas de Bateria para obter mais informações.)

Quando uma solicitação de informações de consulta é feita, esse valor é verificado. Além disso, se a solicitação estiver em andamento enquanto esse valor for alterado, a solicitação será anulada com o status de ERROR_FILE_NOT_FOUND.

InformationLevel

O nível das informações da bateria que estão sendo consultadas. Os dados retornados pelo IOCTL dependem desse valor. Esse membro pode ser um dos valores a seguir.

Valor Significado
BatteryDeviceName
4
Cadeia de caracteres Unicode terminada em nulo que contém o nome da bateria.
BatteryEstimatedTime
3
Um ULONG que especifica o tempo de execução estimado da bateria, em segundos. Se a taxa de dreno fornecida no membro AtRate da estrutura BATTERY_QUERY_INFORMATION for zero, esse cálculo será baseado na taxa atual de dreno. Se AtRate não for zero, o tempo retornado será o tempo de execução esperado para a taxa fornecida. Se o tempo estimado for desconhecido (por exemplo, a bateria não está sendo carregada e o AtRate especificado foi zero), o valor retornado será BATTERY_UNKNOWN_TIME. Observe que esse valor não é muito preciso em alguns sistemas de bateria e pode variar muito dependendo do uso atual de energia, que pode ser afetado pela atividade do disco e outros fatores. Não há mecanismo de notificação para alterações nesse valor.
BatteryGranularityInformation
1
Uma matriz de estruturas BATTERY_REPORTING_SCALE , nunca mais do que quatro entradas.
BatteryInformation
0
Uma estrutura BATTERY_INFORMATION .
BatteryManufactureDate
5
Uma estrutura BATTERY_MANUFACTURE_DATE .
BatteryManufactureName
6
Cadeia de caracteres Unicode terminada em nulo que especifica o nome do fabricante da bateria.
BatterySerialNumber
8
Cadeia de caracteres Unicode terminada em nulo que especifica o número de série da bateria.
BatteryTemperature
2
Um ULONG que especifica a temperatura atual da bateria, em 10º grau, Kelvin.
BatteryUniqueID
7
Cadeia de caracteres Unicode terminada em nulo que identifica exclusivamente a bateria. Esse valor pode ser usado para rastrear uma bateria específica. No caso de baterias inteligentes, essa ID seria a concatenação do nome do fabricante, nome do dispositivo, data de fabricação e uma representação imprimível do número de série.
Esse valor não se destina a ser exibido ao usuário.

AtRate

Esse membro será usado somente se InformationLevel for BatteryEstimatedTime.

Se esse membro não for zero, será uma taxa de dreno que será usada para calcular o tempo até que a bateria seja descarregada para o BatteryEstimatedTime de uma bateria individual. Ele deve ser especificado em mW e deve ser um valor negativo para representar uma taxa de descarga de bateria.

Comentários

Algumas informações sobre baterias são opcionais ou podem não ter sentido para algumas baterias. Se o tipo específico de dados solicitado não estiver disponível para a bateria atual, ERROR_INVALID_FUNCTION será retornado.

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho
Poclass.h;
Batclass.h no Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP

Confira também

BATTERY_INFORMATION

BATTERY_MANUFACTURE_DATE

BATTERY_REPORTING_SCALE

IOCTL_BATTERY_QUERY_INFORMATION

IOCTL_BATTERY_QUERY_TAG