Программирование драйверов Windows


Инсталляция с использованием INF файла


Для такого способа инсталляции драйвера потребуется создать текстовый файл (назовем его Example.inf), в котором будет представлена информация для работы Мастера Установки нового оборудования. В данном файле имеет значение даже то, куда поставлена запятая. Поэтому его следует повторить в точности. (Более подробно составление inf-файлов обсуждается в документации DDK, файл справки install.chm, и в главе 12.)

; Example.Inf - install information file ; Created 2 feb 2003 by SVP [Version] Signature="$Chicago$" Class=Unknown Provider=%SVPBook% DriverVer=02/22/2003,1.0.0.2

[Manufacturer] %SVPBook%=SVP.Science

[SVP.Science] %Example%=Example.Install, *svpBook\Example

[DestinationDirs] Example.Files.Driver=10,System32\Drivers ; куда копировать для Win98 Example.Files.Driver.NTx86=10,System32\Drivers ; куда копировать для NT

[SourceDisksNames] 1="Example build directory",,, ; первая цифра -- единица

[SourceDisksFiles] Example.sys=1,drv\w98 ; где находится новый драйвер для Win98

[SourceDisksFiles.x86] Example.sys=1,drv\nt ; где находится новый драйвер для NT ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Windows 98 [Example.Install] CopyFiles=Example.Files.Driver AddReg=Example.AddReg

[Example.AddReg] HKR,,DevLoader,,*ntkern HKR,,NTMPDriver,,Example.sys [Example.Files.Driver] Example.sys ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Windows 2000, XP, Server 2003 [Example.Install.NTx86] CopyFiles=Example.Files.Driver.NTx86

[Example.Files.Driver.NTx86] Example.sys,,,%COPYFLG_NOSKIP%

[Example.Install.NTx86.Services] AddService = Example, %SPSVCINST_ASSOCSERVICE%, Example.Service

[Example.Service] DisplayName = %Example.ServiceName% ServiceType = %SERVICE_KERNEL_DRIVER% StartType = %SERVICE_AUTO_START% ErrorControl = %SERVICE_ERROR_NORMAL% ServiceBinary = %10%\System32\Drivers\Example.sys ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; Strings [Strings] SVPBook="Introduction to Driver Programming" Example="Example driver: checked build" Example.ServiceName="Example NTDDK driver (V.001)"




Начало  Назад  Вперед