Installare un driver della batteria

Il file INF (.inf) di un driver a batteria specifica informazioni sul driver e sui dispositivi che controlla. Tutti i dispositivi batteria appartengono alla Battery classe e il programma di installazione della classe batteria installa il driver. Le sezioni del file INF di un driver a batteria includono Version, DestinationDirs, Manufacturer, Models, DDInstall e DDInstall.Services.

Questo articolo descrive le voci specifiche per la batteria nel file INF. Per altre informazioni sulla creazione e distribuzione di file INF e sull'installazione dei driver, vedere Creazione di un file INF e Sezioni e direttive del file INF.

Sezione Versione

Il file INF del driver della batteria specifica la Battery classe e il valore GUID della classe usando la sezione Versione INF.

L'esempio seguente illustra come specificare la sezione Version:

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

Il %MyCo% valore deve essere definito in una sezione Stringhe INF, che non è illustrata nell'esempio.

Sezione DestinationDirs

Nella sezione INF DestinationDirs, un driver di batteria specifica l'archivio driver come predefinito per tutti i file.

L'esempio seguente illustra come specificare la sezione DestinationDirs in cui il valore dell'archivio driver è 13:

[DestinationDirs]
DefaultDestDir = 13

Sezione Produttore

La sezione INF Manufacturer definisce il produttore del dispositivo, come illustrato nell'esempio seguente:

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

Sezione Modelli

La sezione MODELLI INF specifica l'ID hardware PnP della batteria (mostrato come ID pnpid nell'esempio). Se il dispositivo viene enumerato tramite un ACPI (Advanced Configuration and Power Interface), questa sezione INF deve specificare anche l'ID di stile EISA (mostrato come ID acpidevnum nell'esempio).

Per informazioni sulla creazione di questi identificatori, vedere la specifica ACPI nel sito Web ACPI/Power Management .

L'esempio seguente illustra come specificare la sezione Models:

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

Sezione DDInstall

Nella sezione INF DDInstall una direttiva INF CopyFiles copia il nuovo driver miniclasse nella destinazione specificata nella direttiva DestinationDirs . Nell'esempio seguente la sezione DDInstall è denominata NewBatt_Inste il driver miniclasse è NewBatt.sys. La specifica usa anche le direttive Include e Needs per specificare una dipendenza dal driver della classe batteria usando la definizione Battery_Inst del file battery.inf.

L'esempio seguente illustra come specificare la sezione DDInstall:

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

Sezione DDInstall.Services

La sezione INF DDInstall.Services include una direttiva INF AddService che specifica altre informazioni sul driver della batteria. Il file INF di un driver a batteria deve indicare che il driver è un driver kernel che usa la normale gestione degli errori e viene avviato durante l'inizializzazione del sistema operativo. I driver della batteria specificano il gruppo di carico Extended Base.

Nell'esempio seguente viene illustrato come specificare la sezione DDInstall.Services:

[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