安装电池驱动程序
电池驱动程序的 INF 文件指定有关驱动程序及其控制的设备的信息。 所有电池设备都属于 Battery 类,电池类安装程序安装驱动程序。
本部分介绍 INF 文件中特定于电池的条目。 有关创建和分发 INF 文件和安装驱动程序的详细信息,请参阅 创建 INF 文件 和 INF 文件节和指令。
电池驱动程序的 INF 文件包括下面所述的部分。
版本
电池驱动程序的 INF 文件通过 INF 版本节指定电池类及其 GUID,如下示例所示:
[Version]
Signature="$WINDOWS NT$"
Class=Battery
ClassGuid={72631e54-78a4-11d0-bcf7-00aa00b7b32a}
Provider=%MyCo%
CatalogFile=ExampleCatalog.cat
PnpLockdown=1
请注意,必须在 INF 字符串部分(未显示)中定义 %MyCo%。
DestinationDirs
在 INF DestinationDirs 部分中,电池驱动程序的 INF 会将驱动程序存储 (13) 指定为所有文件的默认值。
[DestinationDirs]
DefaultDestDir = 13
制造者
INF 制造商部分 定义设备的制造商。
[Manufacturer]
%MyCo%=MyCompany,NTamd64.10.0...16299
模型
INF Models 部分指定电池的 PnP 硬件 ID(如示例中的 pnpid)。 如果通过 ACPI 枚举设备,此部分还必须指定 EISA 样式 ID(显示为 acpidevnum)。 有关创建这些 ID 的信息,请参阅 高级配置和电源接口规范,该规范可通过 ACPI/电源管理 网站获得。
[MyCompany.NTamd64.10.0...16299]
%pnpid.DeviceDesc% = NewBatt_Inst,pnpid
%ACPI\acpidevnum.DeviceDesc% = NewBatt_Inst,ACPI\acpidevnum
DDInstall
在 INF DDInstall 部分(在示例中命名为NewBatt_Inst)中,INF CopyFiles 指令 会将新的微型类驱动程序(NewBatt.sys)复制到 DestinationDirs 指令中指定的目标。 还需要 Include 和 Needs 指令,它们将通过 battery.inf 中的 Battery_Inst 指定对电池类驱动程序的依赖。
[NewBatt_Inst]
CopyFiles = @NewBatt.sys
Include = battery.inf
Needs = Battery_Inst
DDInstall.Services
INF DDInstall.Services 部分包括一个 INF AddService 指令,该指令指定有关电池驱动程序的其他信息。 电池驱动程序的 INF 文件应指示驱动程序是内核驱动程序,该驱动程序使用正常的错误处理并在作系统初始化期间启动。 电池驱动程序指定负载顺序组扩展基。
[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