Раздел INF DDInstall

Каждый раздел DDInstall для каждой модели содержит необязательную директиву DriverVer и одну или несколько директив, ссылающихся на дополнительные именованные разделы в INF-файле, показанные здесь с наиболее часто указанными директивами INF CopyFiles и AddReg, перечисленными первыми.

Разделы, на которые ссылаются эти директивы, содержат инструкции по установке файлов драйверов и записи любых сведений о конкретных устройствах и (или) драйверах в реестр.

[install-section-name] | 
[install-section-name.nt] | 
[install-section-name.ntx86] | 
[install-section-name.ntia64] | (Windows XP and later versions of Windows)
[install-section-name.ntamd64] | (Windows XP and later versions of Windows)
[install-section-name.ntarm] | (Windows 8 and later versions of Windows)
[install-section-name.ntarm64] (Windows 10 version 1709 and later versions of Windows)

[DriverVer=mm/dd/yyyy[,x.y.v.z]]
[CopyFiles=@filename | file-list-section[,file-list-section] ...]
[CopyINF=filename1.inf[,filename2.inf]...] (Windows XP and later versions of Windows)
[AddReg=add-registry-section[,add-registry-section]...]
[AddProperty=add-property-section[,add-property-section]...] (Windows Vista and later versions of Windows)
[Include=filename1.inf[,filename2.inf]...]
[Needs=inf-section-name[,inf-section-name]...]
[Delfiles=file-list-section[,file-list-section]...]
[Renfiles=file-list-section[,file-list-section]...]
[DelReg=del-registry-section[,del-registry-section]...]
[DelProperty=del-property-section[,del-property-section]...] (Windows Vista and later versions of Windows)
[FeatureScore=featurescore]... (Windows Vista and later versions of Windows)
[BitReg=bit-registry-section[,bit-registry-section]...]
[LogConfig=log-config-section[,log-config-section]...]
[ProfileItems=profile-items-section[,profile-items-section]...] (Windows 2000 and later versions of Windows)
[UpdateInis=update-ini-section[,update-ini-section]...]
[UpdateIniFields=update-inifields-section[,update-inifields-section]...]
[Ini2Reg=ini-to-registry-section[,ini-to-registry-section]...]
[RegisterDlls=register-dll-section[,register-dll-section]...]
[UnregisterDlls=unregister-dll-section[,unregister-dll-section]...]
[ExcludeID=device-identification-string[,device-identification-string]...]... ((Windows XP and later versions of Windows)
[Reboot]

Записи

Не все допустимые записи поддерживаются в универсальном INF. Ниже перечислены директивы, допустимые в универсальном INF, а какие нет.

Поддерживается в универсальном INF

DriverVer=mm/dd/yyyy[,x.y.v.z]
Эта необязательная запись указывает сведения о версии пакета драйверов.

Сведения о том, как указать эту запись, см. в разделе Директива INF DriverVer.

CopyFiles=@filename | file-list-section[,file-list-section] ...
Эта директива указывает один именованный файл для копирования с исходного носителя в место назначения или ссылается на один или несколько разделов, определенных inf-writer, в которых файлы, относящиеся к устройству, на исходном носителе указываются для передачи в место назначения. Директива CopyFiles является необязательной, но присутствует в большинстве разделов DDInstall .

Запись DefaultDestDir в разделе DestinationDirs inf указывает назначение для копирования любого отдельного файла. В разделах SourceDisksNames и SourceDisksFiles или в дополнительных файлах INF, указанных в записи LayoutFile раздела Версия этого INF, указывается расположение файлов драйверов на носителе распространения.

Дополнительные сведения см. в разделе Директива INF CopyFiles.

CopyINF=имя_файла1.inf[,имя_файла2.inf]...
(Windows XP и более поздние версии) Эта директива приводит к копированию указанных INF-файлов в целевую систему.

Дополнительные сведения см. в разделе Inf CopyINF Directive.

AddReg=add-registry-section[,add-registry-section]...
Эта директива ссылается на один или несколько разделов, определяемых inf-writer, в которых новые подразделы, возможно, с начальными записями значений, записываются в реестр или в которых изменяются записи значений существующих ключей.

Спецификация HKR в таком разделе реестра надстроек указывает путь к реестру "программный ключ" устанавливаемого устройства.

Дополнительные сведения см. в разделе Inf AddReg Directive.

AddProperty=add-property-section[,add-property-section]...
(Windows Vista и более поздние версии) Ссылается на один или несколько разделов INF-файла, которые изменяют свойства устройства , заданные для экземпляра устройства. Директиву INF AddProperty следует использовать только для задания свойства экземпляра устройства, которое является новым для Windows Vista или более поздних версий операционных систем Windows.

Для свойств экземпляра устройства, которые были представлены ранее в Windows Server 2003, Windows XP или Windows 2000 и имеют соответствующие значения в реестре, следует продолжать использовать директивы INF AddReg для задания свойств экземпляра устройства. Эти рекомендации применяются к системным и пользовательским свойствам. Дополнительные сведения об использовании директивы AddProperty см. в разделах Использование директивы INF AddProperty и Директивы INF DelProperty.

Include=filename1.inf[,filename2.inf]...
Эта необязательная запись указывает один или несколько дополнительных системных INF-файлов, содержащих разделы, необходимые для установки этого устройства и (или) драйвера. Если указана эта запись, обычно это запись Needs .

Например, inf-файлы для драйверов устройств, которые зависят от поддержки потоковой передачи ядра в системе, могут указывать эту запись следующим образом:

Include= ks.inf, kscaptur.inf, ksfilter.inf

Needs=inf-section-name[,inf-section-name]...
Эта необязательная запись указывает разделы в предоставленных системой INF-файлах, которые должны быть обработаны во время установки этого устройства. Как правило, такой именованный раздел является DDInstall (или DDInstall.xxx) раздел в одном из INF-файлов, перечисленных в записи Include . Однако это может быть любой раздел, на который ссылается такая установка DDInstall или DDInstall.xxx раздела включенного INF.

Например, INF-файлы для драйверов устройств, имеющих предыдущую запись Include , могут указывать эту запись следующим образом:

Needs= KS.Registration, KSCAPTUR.Registration.NT, MSPCLOCK.Installation

FeatureScore=featurescore

Предупреждение

Директива FeatureScore обрабатывается только при указании непосредственно в разделе [DDInstall].

(Windows Vista и более поздние версии) Эта директива предоставляет дополнительный критерий ранжирования для драйверов, основанных на функциях, поддерживаемых драйвером. Например, оценки функций могут быть определены для класса настройки устройства , который различает драйверы на основе критериев, относящихся к определенному классу.

Дополнительные сведения о том, как ранжируются драйверы, см. в статье Ранжирует драйверы Windows (Windows Vista и более поздние версии).

Дополнительные сведения об этой директиве см. в разделе Директива INF FeatureScore.

Примечание

Хотя раздел DDInstall может содержать несколько записей FeatureScore , для этого раздела обрабатывается только первая запись.

ExcludeID=device-identification-string[,device-identification-string]...

Предупреждение

Директива ExcludeID обрабатывается только при указании непосредственно в разделе [DDInstall] .

(Windows XP и более поздние версии) Эта директива задает одну или несколько строк идентификации устройств ( идентификаторы оборудования или совместимые идентификаторы). В разделе DDInstall не устанавливаются устройства с идентификаторами устройств , которые соответствуют любому из перечисленных идентификаторов оборудования или совместимых идентификаторов.

Перезагрузка
Эта директива указывает, что вызывающей системе должен быть предложено перезагрузить систему после завершения установки.

Дополнительные сведения см. в разделе Директива ПЕРЕЗАГРУЗКИ INF.

Не поддерживается в универсальном INF

Delfiles=file-list-section[,file-list-section]...
Эта директива ссылается на один или несколько разделов, определяемых inf-writer, перечисляя файлы в целевом объекте для удаления.

Дополнительные сведения см. в разделе Директива INF DelFiles.

Renfiles=file-list-section[,file-list-section]...
Эта директива ссылается на один или несколько разделов, определенных inf-writer, в которых перечислены файлы, которые необходимо переименовать в назначении, прежде чем исходные файлы, относящиеся к устройству, будут скопированы на целевой компьютер.

Дополнительные сведения см. в разделе Директива INF RenFiles.

DelReg=del-registry-section[,del-registry-section]...
Эта директива ссылается на один или несколько разделов, определенных inf-writer, в которых ключи и /или значения записей указываются для удаления из реестра во время установки устройств.

Как правило, эта директива используется для обработки обновлений, когда INF-файл должен очистить старые записи реестра из предыдущей установки этого устройства.

Спецификация HKR в таком разделе удаления реестра определяет путь к реестру "программный раздел" устанавливаемого устройства.

Дополнительные сведения см. в разделе Директива INF DelReg.

DelProperty=del-property-section[,del-property-section]...
(Windows Vista и более поздние версии) Ссылается на один или несколько разделов INF-файла, которые удаляют свойства устройства , заданные для экземпляра устройства. Директиву INF DelProperty следует использовать только для удаления свойства экземпляра устройства, которое является новым для Windows Vista или более поздних версий Windows.

Для свойств экземпляра устройства, которые были представлены ранее в Windows Server 2003, Windows XP или Windows 2000 и имеют соответствующие значения записей реестра, следует продолжать использовать директивы INF DelReg для удаления свойств экземпляра устройства. Эти рекомендации применяются к системным и пользовательским свойствам. Дополнительные сведения об использовании директивы DelProperty см. в разделах Использование директивы INF AddProperty и Директивы INF DelProperty.

BitReg=bit-registry-section[,bit-registry-section]...
Эта директива ссылается на один или несколько разделов, определенных inf-writer, в которых изменяются существующие записи значений реестра типа REG_BINARY .

Спецификация HKR в таком разделе битового реестра определяет путь к реестру "раздел программного обеспечения" устанавливаемого устройства.

Дополнительные сведения см. в разделе Директива BitReg INF.

LogConfig=log-config-section[,log-config-section]...
Эта директива ссылается на один или несколько разделов, определенных inf-writer, в INF для устройства с корневым перечислением или для устройства, установленного вручную. В этих именованных разделах inf для такого "обнаруженного" или установленного вручную устройства указывает одну или несколько логических конфигураций аппаратных ресурсов, относящихся к шине, которые устройство должно быть в рабочем состоянии. Inf для такого устройства, установленного вручную, которое не настраивается программными средствами, также должно иметь DDInstall. Раздел FactDef .

Директива LogConfig никогда не используется для установки устройств Plug and Play (PnP). Однако можно использовать раздел INF DDInstall.LogConfigOverride , чтобы предоставить конфигурацию переопределения для устройств PnP.

Эта директива не имеет отношения ко всем драйверам и компонентам более высокого уровня (без устройств).

Дополнительные сведения см. в разделе Директива INF LogConfig.

ProfileItems=profile-items-section[,profile-items-section]...
(Microsoft Windows 2000 и более поздние версии Windows) Эта редко используемая директива ссылается на один или несколько определенных inf-writer разделов, описывающих элементы, которые нужно добавить или удалить из меню "Пуск".

Дополнительные сведения см. в разделе Директива INF ProfileItems.

UpdateInis=update-ini-section[,update-ini-section]...
Эта редко используемая директива ссылается на один или несколько разделов, определенных inf-writer, указывая исходный INI-файл, из которого конкретный раздел или строка в таком разделе должны быть считаны в целевой INI-файл с тем же именем во время установки. При необходимости в разделе update-ini можно указать построчное изменение существующего INI-файла в назначении из заданного исходного INI-файла с тем же именем.

Дополнительные сведения см. в разделе Директива INF UpdateInis.

UpdateIniFields=update-inifields-section[,update-inifields-section]...
Эта редко используемая директива ссылается на один или несколько определенных inf-writer разделов, в которых указываются изменения в строках ini-файла для конкретного устройства.

Дополнительные сведения см. в разделе Директива INF UpdateIniFields.

Ini2Reg=ini-to-registry-section[, ini-to-registry-section]...
Эта редко используемая директива ссылается на один или несколько определенных inf-writer разделов, в которых разделы или строки из файла INI для конкретного устройства, предоставленного на исходном носителе, должны быть перемещены в реестр.

Дополнительные сведения см. в разделе Директива INF Ini2Reg.

RegisterDlls=register-dll-section[,register-dll-section]...
Эта директива ссылается на один или несколько разделов INF, используемых для указания файлов, которые являются элементами управления OLE и требуют самостоятельной регистрации.

Дополнительные сведения см. в разделе Директива INF RegisterDlls.

UnregisterDlls=unregister-dll-section[,unregister-dll-section]...
Эта директива ссылается на один или несколько разделов INF, используемых для указания файлов, которые являются элементами управления OLE и требуют самостоятельного отмены регистрации (самоустранения).

Дополнительные сведения см. в разделе Директива INF UnregisterDlls.

Комментарии

В документации по комплекту драйверов Windows (WDK) термин DDInstall используется для обозначения имени раздела установки с расширениями платформы или без нее. Таким образом, "раздел DDInstall" означает "именованный раздел в inf-файле в формате [install-section-name] или [install-section-name.ntxxx]". При создании имен для разделов DDInstall необходимо включить префикс для конкретного устройства, например [WDMPNPB003_Device] или [GPR400. Install.NT].

На каждый раздел DDInstall необходимо ссылаться в записи для конкретных устройств или моделей в разделе МОДЕЛИ INF для каждого производителя INF-файла.

За исключением устройств, не имеющих связанных файлов для передачи с исходного носителя, INF-файл, устанавливающий драйвер WDM на разных платформах операционной системы, должен содержать по крайней мере один из следующих разделов DDInstall :

  • Раздел install-section-name.ntx86, в котором указываются записи для установок устройств или драйверов, относящихся к платформам на базе x86.
  • Раздел install-section-name.ntia64, в котором указываются записи для установок устройств или драйверов, относящихся к платформам на основе Itanium.
  • Раздел install-section-name.ntamd64, указывающий записи для установок устройств или драйверов, относящихся к 64-разрядным платформам.
  • Раздел install-section-name.ntarm, указывающий записи для установок устройств или драйверов, относящихся к платформам на основе Arm.
  • Раздел install-section-name.ntarm64, в котором указываются записи для установок устройств или драйверов, относящихся к платформам на основе Arm64.
  • Раздел install-section-name или install-section-name.nt, в котором указываются записи для установок устройств или драйверов, которые не относятся к определенной аппаратной платформе.

Дополнительные сведения об использовании системных расширений .nt, .ntx86, .ntia64, .ntamd64, .ntarm и .ntarm64 см. в статье Создание INF-файлов для нескольких платформ и операционных систем.

Начиная с Windows 2000 INF-файл, устанавливающий драйверы, должен содержать разделы DDInstall.Services для указания сведений о службе драйверов.

Каждая директива в разделе DDInstall может ссылаться на несколько имен разделов. Однако каждый дополнительный именованный раздел должен быть отделен от следующего запятой (,).

Имя каждого раздела должно быть уникальным в INF-файле и соответствовать общим правилам определения имен разделов. Дополнительные сведения об этих правилах см. в статье Общие правила синтаксиса для ФАЙЛОВ INF.

Предполагается, что любая директива AddReg , указанная в разделе DDInstall , ссылается на раздел реестра надстроек, который не может использоваться для хранения сведений о драйверах верхнего или нижнего фильтров, о многофункциональных устройствах или о независимых от драйвера, но зависящих от конкретного устройства параметрах. Если inf-файл устройства или драйвера должен хранить этот тип информации в реестре, он должен использовать директиву AddReg в необязаченном и декорированном DDInstall. Разделы HW , если таковые есть, для ссылки на другой раздел add-registry-section, определяемый inf-writer.

В зависимости от класса настройки устройства , указанного в разделе INF Version, в разделе DDInstall можно указать дополнительные директивы для конкретного класса. Дополнительные сведения о директивах, зависящих от класса, см. в следующих разделах:

Примеры

В этом примере показано расширение разделов DDInstall , Ser_Inst и Inp_Inst. На эти разделы ссылаются в примере для раздела Модели INF.

[Ser_Inst]
CopyFiles=Ser_CopyFiles, mouclass_CopyFiles

[Ser_CopyFiles]
sermouse.sys

[mouclass_CopyFiles] ; section name referenced by > 1 CopyFiles
mouclass.sys

[Inp_Inst]
CopyFiles=Inp_CopyFiles, mouclass_CopyFiles

[Inp_CopyFiles]
inport.sys

В следующем примере показан раздел DDInstall INF-файла, который устанавливает предоставленный системой драйвер WDM для звукового устройства на различных платформах операционной системы:

[WDMPNPB003_Device.NT]
Include=ks.inf, wdmaudio.inf
Needs=KS.Registration, WDMAUDIO.Registration.NT
CopyFiles=MSSB16.CopyList
AddReg=WDM_SB16.AddReg

В следующем примере показаны разделы, на которые ссылается предыдущая запись Needs в системных файлах ks.inf и wdmaudio.inf . В предыдущем примере эти файлы указаны в записи Includes . Когда установщик устройства операционной системы обрабатывает имя раздела установки этого устройства. nt section, эти два следующих раздела также обрабатываются.

[KS.Registration]
; following AddReg= is actually a single line in the ks.inf file
AddReg=ProxyRegistration,CategoryRegistration,\
    TopologyNodeRegistration,PlugInRegistration,PinNameRegistration,\
    DeviceRegistration 
CopyFiles=KSProxy.Files,KSDriver.Files

[WDMAUDIO.Registration.NT]
AddReg=WDM.AddReg
CopyFiles=WDM.CopyFiles.Sys, WDM.CopyFiles.Drv
;
; INF-writer-defined add-registry and file-list sections
; referenced by preceding directives are omitted here for brevity
;

См. также раздел

AddProperty

DDInstall. CoInstallers

DDInstall. FactDef

DDInstall. HW

DDInstall. Интерфейсы

DDInstall. LogConfigOverride

DDInstall. Услуги

DefaultInstall

DefaultInstall.Services

DelProperty

FeatureScore