Instalowanie sterownika baterii
Plik INF sterownika baterii określa informacje o sterowniku i urządzeniach, które kontroluje. Wszystkie urządzenia baterii należą do klasy Baterii, a instalator klasy baterii instaluje sterownik.
W tej sekcji opisano wpisy specyficzne dla baterii w pliku INF. Aby uzyskać więcej informacji na temat tworzenia i rozpowszechniania plików INF oraz instalowania sterowników, zobacz Creating an INF File and INF File Sections and Directives.
Plik INF sterownika baterii zawiera sekcje opisane poniżej.
Wersja
Plik INF sterownika baterii określa klasę baterii i jego GUID, korzystając z sekcji Wersja INF , jak pokazano w poniższym przykładzie:
[Version]
Signature="$WINDOWS NT$"
Class=Battery
ClassGuid={72631e54-78a4-11d0-bcf7-00aa00b7b32a}
Provider=%MyCo%
CatalogFile=ExampleCatalog.cat
PnpLockdown=1
Należy pamiętać, że %MyCo% trzeba zdefiniować w sekcji Ciągów INF (nie pokazano).
DestinationDirs
W sekcji INF DestinationDirs, plik INF sterownika baterii wskazuje magazyn sterowników (13) jako domyślny dla wszystkich plików.
[DestinationDirs]
DefaultDestDir = 13
Producent
Sekcja producent INF definiuje producenta urządzenia.
[Manufacturer]
%MyCo%=MyCompany,NTamd64.10.0...16299
Modele
Sekcja INF Models określa identyfikator sprzętu PnP baterii (przedstawiony jako pnpid w przykładzie). Jeśli urządzenie jest wyliczane przez ACPI, w tej sekcji należy również podać identyfikator stylu EISA (pokazany jako acpidevnum). Aby uzyskać informacje na temat tworzenia tych identyfikatorów, zobacz Specyfikacja zaawansowanej konfiguracji i interfejsu zasilania, która jest dostępna za pośrednictwem strony internetowej ACPI / Power Management.
[MyCompany.NTamd64.10.0...16299]
%pnpid.DeviceDesc% = NewBatt_Inst,pnpid
%ACPI\acpidevnum.DeviceDesc% = NewBatt_Inst,ACPI\acpidevnum
DDInstall
W sekcji INF DDInstall (nazywanej NewBatt_Inst w przykładzie) dyrektywa INF CopyFiles kopiuje nowy sterownik miniklasy (NewBatt.sys) do miejsca docelowego określonego w dyrektywie DestinationDirs. Wymagana jest również dyrektywa Include oraz Needs określająca zależność od sterownika klasy baterii przez Battery_Inst z baterii.inf.
[NewBatt_Inst]
CopyFiles = @NewBatt.sys
Include = battery.inf
Needs = Battery_Inst
DDInstall.Services
INF DDInstall.Sekcja Usług zawiera dyrektywy INF AddService, które określają dodatkowe informacje o sterowniku baterii. Plik INF sterownika baterii powinien wskazywać, że sterownik jest sterownikiem jądra, który używa normalnej obsługi błędów i rozpoczyna się podczas inicjowania systemu operacyjnego. Sterowniki baterii określają grupę kolejności ładowania 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