Compartir a través de


Instalación de un controlador de batería

Un archivo INF del controlador de batería especifica información sobre el controlador y los dispositivos que controla. Todos los dispositivos de batería pertenecen a la clase Battery y el instalador de clase de batería instala el controlador.

En esta sección se describen las entradas específicas de la batería en el archivo INF. Para obtener más información sobre cómo crear y distribuir archivos INF e instalar controladores, vea Crear un archivo INF y Secciones y Directivas INF.

El archivo INF de un controlador de batería incluye las secciones que se describen a continuación.

Versión

Un archivo INF del controlador de batería especifica la clase de Batería y su GUID, utilizando la sección Versión de INF , como se muestra en el ejemplo siguiente:

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

Tenga en cuenta que %MyCo% deben definirse en la sección Cadenas INF (no se muestra).

DestinationDirs

En la sección DestinationDirs del INF, un INF del controlador de batería especifica el almacén de controladores (13) como valor predeterminado para todos los archivos.

[DestinationDirs]
DefaultDestDir = 13

Fabricante

La sección fabricante INF define el fabricante del dispositivo.

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

Modelos

La sección INF Models especifica el identificador de hardware PnP de la batería (se muestra como pnpid en el ejemplo). Si el dispositivo se enumera a través de ACPI, esta sección también debe especificar el identificador de estilo EISA (que se muestra como acpidevnum). Para obtener información sobre cómo crear estos identificadores, consulte la Especificación de la Interfaz avanzada de configuración y energía, que está disponible en el sitio web de ACPI/Administración de energía.

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

DDInstall

En la sección INF DDInstall (denominada NewBatt_Inst en el ejemplo), una directiva INF CopyFiles copia el nuevo controlador de miniclase (NewBatt.sys) en el destino especificado en la directiva DestinationDirs. También se necesita una directiva Include y Needs que especifique una dependencia con el controlador de la clase de batería, mediante Battery_Inst de battery.inf.

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

DDInstall.Services

La sección sección INF DDInstall.Services incluye una directiva INF AddService que especifica información adicional sobre el controlador de batería. Un archivo INF del controlador de batería debe indicar que el controlador es un controlador kernel que usa el control de errores normal y se inicia durante la inicialización del sistema operativo. Los controladores de batería especifican el grupo de orden de carga Extended Base.

[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