Descarregar rotina de um driver de miniclasse de bateria
A rotina Unload para um driver de miniclasse de bateria garante que todos os dispositivos do driver tenham sido removidos e libere todos os recursos alocados pelo driver de miniclasse.
A rotina Unload deve primeiro marcar para garantir que todos os seus dispositivos tenham sido removidos e, caso contrário, faça o seguinte para cada dispositivo restante:
Chame BatteryClassUnload para informar ao driver de classe que o driver de miniclasse está descarregando o dispositivo.
Desabilite as notificações de dispositivo de drivers inferiores, como o driver ACPI, usando a interface desse driver.
Exclua o objeto de dispositivo para o dispositivo chamando IoDeleteDevice, da seguinte maneira:
IoDeleteDevice (NewBatt->DeviceObject);
Depois que todos os dispositivos do driver de miniclasse forem descarregados, a rotina Unload deverá liberar todos os recursos alocados pelo driver de miniclasse.
A rotina Unload do driver de miniclasse pode ser chamada a qualquer momento depois que todos os dispositivos do driver tiverem sido removidos. O Gerenciador de PnP chama a rotina Unload no contexto de um thread do sistema em IRQL = PASSIVE_LEVEL.