Função BatteryClassIoctl (batclass.h)
BatteryClassIoctl manipula IOCTLs de bateria definidas pelo sistema.
Sintaxe
NTSTATUS BATTERYCLASSAPI BatteryClassIoctl(
[in] PVOID ClassData,
[in, out] PIRP Irp
);
Parâmetros
[in] ClassData
Ponteiro para um identificador de classe de bateria que foi retornado anteriormente por BatteryClassInitializeDevice.
[in, out] Irp
Ponteiro para o IRP que contém o IOCTL a ser tratado.
Retornar valor
BatteryClassIoctl retorna STATUS_SUCCESS quando atende à solicitação e conclui o IRP. Ele retorna STATUS_NOT_SUPPORTED para todos os IRPs que não sejam IRPs de controle de dispositivo que especificam IOCTLs de bateria.
Comentários
BatteryClassIoctl manipula e conclui o controle de dispositivo IRPs destinados à bateria. Esses IRPs têm um dos seguintes códigos de controle de E/S:
- IOCTL_BATTERY_QUERY_INFORMATION
- IOCTL_BATTERY_QUERY_STATUS
- IOCTL_BATTERY_QUERY_TAG
- IOCTL_BATTERY_SET_INFORMATION
Quando o driver de miniclasse é chamado com uma solicitação IRP_MJ_DEVICE_CONTROL , ele deve determinar se o IRP contém qualquer IOCTL privado definido pelo driver de miniclasse. Nesse caso, o driver de miniclasse deve atender à solicitação, concluir o IRP e retornar.
Se o IRP contiver um IOCTL público, o driver deverá passar o IRP para a rotina BatteryClassIoctl do driver de classe. Essa rotina examina o IRP, determina se ele se aplica ao dispositivo de bateria do chamador e, nesse caso, chama a rotina BatteryMiniXxx apropriada para executar a operação solicitada.
Se BatteryClassIoctl retornar STATUS_NOT_SUPPORTED para o IRP, o driver de miniclasse deverá concluir o IRP ou encaminhá-lo para o driver mais baixo.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | batclass.h (inclua Batclass.h) |
Biblioteca | Battc.lib |