struttura BATTERY_QUERY_INFORMATION

Contiene informazioni sulla query sulla batteria. Questa struttura viene utilizzata con il codice di controllo IOCTL_BATTERY_QUERY_INFORMATION per specificare il tipo di informazioni da restituire.

Sintassi

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

Members

BatteryTag

Tag della batteria corrente. È possibile restituire solo informazioni per una batteria corrispondente al tag. Ogni volta che questo valore non corrisponde al tag corrente della batteria, la richiesta IOCTL verrà completata con ERROR_FILE_NOT_FOUND. Questo indica al chiamante che la batteria associata al tag esiste più a lungo. Il chiamante può scegliere di usare l'operazione di IOCTL_BATTERY_QUERY_TAG per determinare il tag della batteria appena installata, se presente. Per altre informazioni, vedere Tag batteria .

Quando viene effettuata una richiesta di informazioni sulla query, questo valore viene verificato. Inoltre, se la richiesta è in corso durante la modifica di questo valore, la richiesta viene interrotta con lo stato di ERROR_FILE_NOT_FOUND.

InformationLevel

Livello delle informazioni sulla batteria sottoposte a query. I dati restituiti da IOCTL dipendono da questo valore. Questo membro può essere uno dei valori seguenti.

Valore Significato
BatteryDeviceName
4
Stringa Unicode con terminazione Null che contiene il nome della batteria.
BatteryEstimatedTime
3
ULONG che specifica il tempo di esecuzione stimato della batteria, espresso in secondi. Se il tasso di scarico fornito nel membro AtRate della struttura BATTERY_QUERY_INFORMATION è zero, questo calcolo si basa sulla frequenza attuale di scarico. Se AtRate è diverso da zero, il tempo restituito è il tempo di esecuzione previsto per la velocità specificata. Se il tempo stimato è sconosciuto (ad esempio, la batteria non viene scaricata e l'oggetto AtRate specificato è zero), il valore restituito è BATTERY_UNKNOWN_TIME. Si noti che questo valore non è molto accurato in alcuni sistemi a batteria e può variare notevolmente a seconda dell'utilizzo attuale dell'alimentazione, che potrebbe essere influenzato dall'attività del disco e da altri fattori. Non esiste alcun meccanismo di notifica per le modifiche apportate a questo valore.
BatteryGranularityInformation
1
Matrice di strutture BATTERY_REPORTING_SCALE , mai più di quattro voci.
BatteryInformation
0
Struttura BATTERY_INFORMATION .
BatteryManufactureDate
5
Struttura BATTERY_MANUFACTURE_DATE .
BatteryManufactureName
6
Stringa Unicode con terminazione Null che specifica il nome del produttore della batteria.
BatterySerialNumber
8
Stringa Unicode con terminazione Null che specifica il numero di serie della batteria.
BatteryTemperature
2
ULONG che specifica la temperatura corrente della batteria, in 10 di grado Kelvin.
BatteryUniqueID
7
Stringa Unicode con terminazione Null che identifica in modo univoco la batteria. Questo valore può essere usato per tenere traccia di una batteria specifica. Nel caso di batterie intelligenti, questo ID corrisponderebbe alla concatenazione del nome del produttore, del nome del dispositivo, della data di produzione e di una rappresentazione stampabile del numero di serie.
Questo valore non deve essere visualizzato all'utente.

AtRate

Questo membro viene utilizzato solo se InformationLevel è BatteryEstimatedTime.

Se questo membro è diverso da zero, è una velocità di scarico che verrà usata per calcolare il tempo fino a quando la batteria non viene scaricata per batteryEstimatedTime di una singola batteria. Deve essere specificato in mW e deve essere un valore negativo per rappresentare una frequenza di scarica della batteria.

Commenti

Alcune informazioni sulle batterie sono facoltative o possono essere inutili per alcune batterie. Se il particolare tipo di dati richiesto non è disponibile per la batteria corrente, viene restituito ERROR_INVALID_FUNCTION.

Requisiti

Requisito Valore
Client minimo supportato
Windows XP [solo app desktop]
Server minimo supportato
Windows Server 2003 [solo app desktop]
Intestazione
Poclass.h;
Batclass.h in Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP

Vedi anche

BATTERY_INFORMATION

BATTERY_MANUFACTURE_DATE

BATTERY_REPORTING_SCALE

IOCTL_BATTERY_QUERY_INFORMATION

IOCTL_BATTERY_QUERY_TAG