Поделиться через


Директива INF UpdateIniFields

Внимание

Начиная с Windows 11 версии 22H2 пакет драйвера, использующий эту директиву, больше не подходит для подписи из Центра разработчиков оборудования.

Пакеты универсальных драйверов и драйверы Windows не могут использовать эту директиву.

Директива UpdateIniFields ссылается на один или несколько именованных разделов, в которых можно указать подробные изменения в строках файла INI.

[DDInstall] | 
[DDInstall.CoInstallers] | 
[ClassInstall32] | 
[ClassInstall32.ntx86] | 
[ClassInstall32.ntia64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntamd64] | (Windows XP and later versions of Windows)
[ClassInstall32.ntarm] | (Windows 8 and later versions of Windows)
[ClassInstall32.ntarm64] (Windows 10 version 1709 and later versions of Windows)

UpdateIniFields=update-inifields-section[,update-inifields-section]...

Каждый именованный раздел, на который ссылается директива UpdateIniFields , имеет следующую форму:

[update-inifields-section]
 
ini-file,ini-section,profile-name[,old-field][,new-field][,flags]
...

Раздел update-inifields может иметь любое количество записей, определяемых inf-writer, каждой из них в отдельной строке.

Операции

ini-file
Указывает имя INI-файла, предоставленного на исходном носителе, и неявно указывает имя обновляемого INI-файла на целевом компьютере. Это значение может быть выражено как имя файла или как маркер %strkey% , определенный в разделе Strings в INF-файле.

ini-section
Указывает имя раздела в заданных файлах INI, содержащих строку, которую необходимо изменить.

имя профиля
Указывает имя строки, которое необходимо изменить в данном разделе INI. Чтобы изменить эту строку, необходимо указать хотя бы одну из старых записей и (или) нового поля.

старое поле
Указывает существующее поле в заданной строке. Если новое поле опущено из этой записи раздела, это поле удаляется из данной строки. В противном случае заданное значение нового поля должно заменить это поле.

новое поле
Указывает замену заданного старого поля или, если старое поле опущено, дополнение к данной строке.

flags
Указывает (в бите 0), как интерпретировать данное старое-поле и (или) новое- поле, если или оба содержат звездочку (*) и /или (в бите 1), символ разделителя, который следует использовать при добавлении заданного нового поля к заданной строке следующим образом:

Бит нуля = 0
Интерпретирует любую звездочку (*) в указанном старом поле и (или) записи нового поля буквально, а не как символ подстановки, при поиске совпадения в заданной строке INI-файла. Это значение по умолчанию.

Бит нуля = 1
Интерпретирует любую звездочку (*) в указанном старом поле и (или) записи нового поля как символ подстановки при поиске совпадения в заданной строке INI-файла.

Bit one = 0
Используйте пробел в качестве разделителя при добавлении указанной записи нового поля в указанную строку INI-файла. Это значение по умолчанию.

Bit one = 1
Используйте запятую (,) в качестве разделителя при добавлении указанной записи нового поля в указанную строку файла INI.

Замечания

Директива UpdateIniFields почти никогда не указана в INF-файлах для установки в Windows, так как не требуется иметь файлы INI на их носителе дистрибутива. Однако директива UpdateIniFields действительна в любом из разделов, показанных в формальной инструкции синтаксиса, а также в разделах, определенных inf-writer, на которые ссылается директива AddInterface или указанная в разделе InterfaceInstall32.

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

В отличие от раздела, на который ссылается директива UpdateInis , раздел, на который ссылается UpdateIniFields , заменяет, добавляет или удаляет части строки в существующей строке INI вместо того, чтобы влиять на все значение определенной строки. В каждой записи раздела необходимо указать по крайней мере одно из старых значений полей и (или) нового поля.

Все примечания в строке файла INI удаляются, так как они могут не применяться после внесения изменений в соответствии с этим разделом. При поиске полей в строках в файлах INI, пробелах, вкладках и запятых интерпретируются как разделители полей. Однако пробел используется в качестве разделителя по умолчанию при добавлении нового поля к строке.

INF предоставляет полный путь к указанному ini-file на носителе распространения одним из следующих способов:

  • В IHV/OEM-файлах INF с помощью разделов SourceDisksNames и SourceDisksFiles этого INF явно укажите полный путь к каждому именованному исходному файлу, который не находится в корневом каталоге (или каталогах) на носителе распространения.

  • В системных INF-файлах, указав один или несколько дополнительных INF-файлов, указанных в записи LayoutFile в разделе "Версия " INF-файла.

См. также

AddInterface

ClassInstall32

DDInstall

Ini2Reg

InterfaceInstall32

SourceDisksFiles

SourceDisksNames

Строки

UpdateInis

Версия