Compartilhar via


Instalar um driver de bateria

Um arquivo INF do driver de bateria especifica informações sobre o driver e os dispositivos que ele controla. Todos os dispositivos de bateria pertencem à classe Battery e o instalador da classe de bateria instala o driver.

Esta seção descreve as entradas específicas da bateria no arquivo INF. Para obter mais informações sobre como criar e distribuir arquivos INF e instalar drivers, consulte Criando um arquivo INF e seções e diretivas de arquivo INF.

Um arquivo INF do driver de bateria inclui as seções descritas abaixo.

Versão

Um arquivo INF do driver de bateria especifica a classe Battery e seu GUID usando a seção Versão do INF, conforme mostrado no exemplo a seguir:

[Version]
Signature="$WINDOWS NT$"
Class=Battery
ClassGuid={72631e54-78a4-11d0-bcf7-00aa00b7b32a}
Provider=%MyCo%
CatalogFile=ExampleCatalog.cat
PnpLockdown=1

Observe que %MyCo% deve ser definido em uma seção de cadeias de caracteres inf (não mostrada).

DestinationDirs

Na seção DestinationDirs do INF, o INF de um driver de bateria especifica o repositório de driver (13) como o padrão para todos os arquivos.

[DestinationDirs]
DefaultDestDir = 13

Fabricante

A seção Manufacturer do INF define o fabricante do dispositivo.

[Manufacturer]
%MyCo%=MyCompany,NTamd64.10.0...16299

Modelos

A seção Models do INF especifica a ID de hardware PnP da bateria (mostrada como pnpid no exemplo). Se o dispositivo for enumerado por meio de ACPI, esta seção também deverá especificar a ID no estilo EISA (mostrada como acpidevnum). Para obter informações sobre como criar essas IDs, consulte a Especificação de Configuração Avançada e Interface de Energia , que está disponível por meio do site ACPI/Gerenciamento de Energia.

[MyCompany.NTamd64.10.0...16299]
%pnpid.DeviceDesc% = NewBatt_Inst,pnpid
%ACPI\acpidevnum.DeviceDesc% = NewBatt_Inst,ACPI\acpidevnum

DDInstall

Na seção DDInstall do INF (nomeada NewBatt_Inst no exemplo), uma diretiva INF CopyFiles copia o novo driver de miniclasse (NewBatt.sys) para o destino especificado na diretiva DestinationDirs. Uma diretiva Include e Needs especificando uma dependência no driver da classe de bateria por meio de Battery_Inst de battery.inf também é necessária.

[NewBatt_Inst]
CopyFiles = @NewBatt.sys
Include = battery.inf
Needs = Battery_Inst

DDInstall.Services

A seção DDInstall.Services do INF inclui uma diretiva AddService do INF que especifica informações adicionais sobre o driver de bateria. Um arquivo INF do driver de bateria deve indicar que o driver é um driver de kernel que usa o tratamento de erros normal e inicia durante a inicialização do sistema operacional. Os drivers de bateria especificam o grupo de ordem de carregamento Base Estendida.

[NewBatt_Inst.Services]
AddService = NewBatt,2,NewBatt_Service_Inst    ; function driver for the device
 
[NewBatt_Service_Inst]
DisplayName    = %NewBatt.SvcDesc%
ServiceType    = 1 ;    SERVICE_KERNEL_DRIVER
StartType      = 3 ;    SERVICE_DEMAND_START
ErrorControl   = 1 ;    SERVICE_ERROR_NORMAL%
ServiceBinary  = %13%\NewBatt.sys