Previous Next

INF UpdateIniFields Directive

[DDInstall] |
[DDInstall.CoInstallers] |
[ClassInstall32] |
[ClassInstall32.ntx86] |
[ClassInstall32.ntia64]

 

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

An UpdateIniFields directive references one or more named sections in which fine-grained modifications within the lines of an INI file can be specified.

This directive is almost never specified in INF files for installations on NT-based systems, due to the lack of necessity for INI files on their distribution media. However, the UpdateIniFields directive is valid in any of the sections shown in the formal syntax statement, as well as in INF-writer-defined sections referenced by an AddInterface directive or referenced in an InterfaceInstall32 section.

Comments

A given update-inifields-section name must be unique to the INF file. Each INF-writer-created section name must be unique within the INF and must follow the general rules for defining section names. These rules are described in General Syntax Rules for INF Files. For information about how to use the system-defined .nt, .ntx86, and .ntia64 extensions, see Creating INF Files for Multiple Platforms and Operating Systems.

Each named section referenced by an UpdateIniFields directive has the following form:

[update-inifields-section]
 

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

An update-inifields-section can have any INF-writer-determined number of entries, each on a separate line.

By contrast with a section referenced by the UpdateInis directive, a section referenced by UpdateIniFields replaces, adds, or deletes portions of a line in an existing INI file line rather than affecting the whole value of a particular line. At least one of the old-field and/or new-field values must be specified in each section entry.

UpdateIniFields-Referenced Section Entries

ini-file
Specifies the name of an INI file supplied on the source media and, implicitly, that of a to-be-updated INI file on the target machine. This value can be expressed as a filename or as a %strkey% token that is defined in a Strings section of the INF file.
ini-section
Specifies the name of the section within the given INI files containing the line to be modified.
profile-name
Specifies the name of the line to be modified within the given INI section. At least one of the old-field and/or new-field must be specified to effect a modification of this line.
old-field
Specifies an existing field within the given line. If new-field is omitted from this section entry, this field will be deleted from the given line. Otherwise, the given new-field value should replace this field.
new-field
Specifies a replacement for a given old-field or, if old-field is omitted, an addition to the given line.
flags
Specifies (in bit 0) how to interpret given old-field and/or new-field if either or both contain an asterisk (*), and/or (in bit 1) which separator character to use when appending a given new-field to the given line, as follows:
Bit zero = 0
Interpret any asterisk (*) in the given old-field and/or new-field literally, not as a wild-card character, when searching for a match in the given line of the INI file. This is the default value.
Bit zero = 1
Interpret any asterisk (*) in the given old-field and/or new-field as a wild-card character when searching for a match in the given line of the INI file.
Bit one = 0
Use a space character as a separator when adding the given new-field to the given line of the INI file. This is the default value.
Bit one = 1
Use a comma (,) as a separator when adding the given new-field to the given line of the INI file.

Any comments in a to-be-modified INI file line are removed because they might not be applicable after changes made according to this section. When looking for fields in the line in the INI files, spaces, tabs, and commas are interpreted as field delimiters. However, a space character is used as the default separator when a new field is appended to a line.

The INF provides the full path to the given ini-file on the distribution media in one of the following ways:

See Also

AddInterface, ClassInstall32, DDInstall, DDInstall.CoInstallers, Ini2Reg, InterfaceInstall32, SourceDisksFiles, SourceDisksNames, Strings, UpdateInis, Version