INF UpdateInis Direktive

Achtung

Ab Windows 11 Version 22H2 ist ein Treiberpaket, das diese Direktive verwendet, nicht mehr für eine Signatur vom Hardware Developer Center geeignet.

Universelle Treiberpakete und Windows-Treiber können diese Direktive nicht verwenden.

Eine Direktive UpdateInis verweist auf einen oder mehrere benannte Abschnitte und gibt eine INI-Datei an, aus der ein bestimmter Abschnitt oder eine bestimmte Zeile gelesen und auf eine vorhandene INI-Datei mit demselben Namen auf dem Zielcomputer angewendet werden soll. Optional können in der Direktive update-ini-section zeilenweise Änderungen aus und an solchen INI-Dateien angegeben werden.

[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)

UpdateInis=update-ini-section[,update-ini-section]...

Diese Direktive wird in INF-Dateien für die Installation unter Windows fast nie angegeben, da INI-Dateien nicht notwendig sind. Die Direktive UpdateInis ist jedoch in allen Abschnitten gültig, die in der formalen Syntaxanweisung aufgeführt sind, sowie in von INF-Autoren*innen definierten Abschnitten, auf die eine Direktive AddInterface verweist oder die in einem Abschnitt InterfaceInstall32 referenziert werden.

Jeder benannte Abschnitt, der von einer UpdateInis-Direktive referenziert wird, hat die folgende Form:

[update-ini-section]
 
ini-file,ini-section[,old-ini-entry][,new-ini-entry][,flags]
...

Ein update-ini-section kann eine beliebige, von INF-Autor*innen festgelegte Anzahl von Einträgen haben, die jeweils in einer eigenen Zeile stehen.

Entries

ini-file
Gibt den Namen einer INI-Datei an, die auf dem Quellmedium bereitgestellt wird, und implizit auch den Namen der INI-Datei, die auf dem Zielcomputer aktualisiert werden soll. Dieser Wert kann als filename oder als %strkey% Token ausgedrückt werden, das in einem Strings-Abschnitt der INF-Datei definiert ist.

ini-section
Gibt den Namen des Abschnitts innerhalb der angegebenen INI-Datei an. Wenn die nächsten beiden Werte angegeben sind, enthält dieser Abschnitt einen zu ändernden Eintrag. Wenn ein old-ini-entry weggelassen wird, aber ein new-ini-entry angegeben wird, soll der neue Eintrag hinzugefügt werden, wenn dieser Abschnitt gelesen wird.

old-ini-entry
Dieser optionale Wert gibt den Namen eines Eintrags in der angegebenen ini-section an, normalerweise in der folgenden Form ausgedrückt:

"key=value"

Einer oder beide von key und value können als %strkey% Token ausgedrückt werden, die in einem Strings-Abschnitt der INF-Datei definiert sind. Das Sternchen (*) kann als Wildcard entweder für key oder value angegeben werden.

new-ini-entry
Dieser optionale Wert gibt entweder eine Änderung an einem bestimmten old-ini-entry oder das Hinzufügen eines neuen Eintrags an. Dieser Wert kann auf die gleiche Weise ausgedrückt werden wie old-ini-entry.

flags
Dieser optionale Wert steuert die Interpretation des angegebenen old-ini-entry und/oder new-ini-entry. Der Eintrag flags kann einer der folgenden numerischen Werte sein:

Wert Bedeutung
0 Dies ist der Standardwert für den Eintrag flags, wenn er weggelassen wird.

Wenn der angegebene Schlüssel old-ini-entry in den INI-Dateien vorhanden ist, ersetzen Sie diesen key=value durch den angegebenen new-ini-entry. Nur die Schlüssel in den INI-Dateien müssen übereinstimmen. Der entsprechende Wert eines jeden solchen Schlüssels wird ignoriert.

Um der Ziel-INI-Datei einen neuen-ini-entry bedingungslos hinzuzufügen, lassen Sie den Wert old-ini-entry aus dem Eintrag im Abschnitt update-ini der INF weg.

Um einen old-ini-entry bedingungslos aus der Ziel-INI-Datei zu löschen, lassen Sie den Wert new-ini-entry weg.
1 Wenn der angegebene old-ini-entry (key=value) in den INI-Dateien existiert, ersetzen Sie ihn in der Ziel-INI-Datei, die den angegebenen new-ini-entry hat. Sowohl key als auch value des angegebenen old-ini-entry müssen mit denen in den INI-Dateien übereinstimmen, damit eine solche Ersetzung vorgenommen werden kann, nicht nur deren Schlüssel wie bei dem vorhergehenden flags-Wert.
2 Wenn der key, der für old-ini-entry angegeben ist, in der Ziel-INI-Datei nicht gefunden wird, tun Sie nichts. Andernfalls hängen die vorgenommenen Änderungen von den Übereinstimmungen ab, die in den INI-Dateien für die angegebenen Schlüssel von old-ini-entry und new-ini-entry gefunden wurden, und zwar wie folgt:

(1) Wenn der key des old-ini-entry in den INI-Dateien vorhanden ist, aber auch der key des new-ini-entry, wird in der Ziel-INI-Datei der old-ini-entry durch den new-ini-entry ersetzt und dann der überflüssige new-ini-entry aus dieser INI-Datei entfernt.

(2) Wenn der key des old-ini-entry in den INI-Dateien vorhanden ist, der Schlüssel des new-ini-entry jedoch nicht, wird der old-ini-entry key durch den des new-ini-entry in der Ziel-INI-Datei ersetzt, der Wert des old-ini-entry jedoch unverändert gelassen.
3 Wenn key und value, die für old-ini-entry angegeben wurden, nicht in den INI-Dateien gefunden werden, wird nichts unternommen. Andernfalls hängen die vorgenommenen Änderungen von den Übereinstimmungen ab, die in den INI-Dateien für die angegebenen Schlüssel und Werte von old-ini-entry und new-ini-entry gefunden wurden, und zwar wie folgt:

(1) Wenn key=value des old-ini-entry in den INI-Dateien vorhanden ist, der key=value des new-ini-entry jedoch nicht, wird in der Ziel-INI-Datei der old-ini-entry durch den new-ini-entry ersetzt und dann der überflüssige new-ini-entry aus dieser INI-Datei entfernt.

(2) Wenn der key=value des old-ini-entry in den INI-Dateien vorhanden ist, der new-ini-entry aber nicht, wird der old-ini-entry in der Ziel-INI-Datei durch den new-ini-entry ersetzt, der Wert des old-ini-entry aber unverändert gelassen.

Hinweise

Ein gegebener update-ini-section-Name muss innerhalb der INF-Datei eindeutig sein und den allgemeinen Regeln für die Definition von Abschnittsnamen entsprechen. Weitere Informationen zu diesen Regeln finden Sie unter Allgemeine Syntaxregeln für INF-Dateien.

Die INF-Datei gibt den vollständigen Pfad der angegebenen ini-file auf dem Distributionsmedium auf eine der folgenden Arten an:

  • In von IHV/OEM bereitgestellten INF-Dateien verwenden Sie die Abschnitte SourceDisksNames und SourceDisksFiles dieser INF, um explizit den vollständigen Pfad jeder benannten Quelldatei anzugeben, die sich nicht im Root-Verzeichnis (oder den Verzeichnissen) auf dem Distributionsmedium befindet.

  • In vom System bereitgestellten INF-Dateien, indem Sie eine oder mehrere zusätzliche INF-Dateien bereitstellen, die im Eintrag LayoutFile im Abschnitt Version der INF-Datei angegeben sind.

Jeder filename, der innerhalb eines old-ini-entry oder new-ini-entry angegeben wird, sollte das Zielverzeichnis bezeichnen, das diese Datei enthält. Ein solcher Zielverzeichnispfad eines filename in einem update-ini-section-Eintrag muss als dirid angegeben werden. Eine Liste der möglichen dirid-Werte finden Sie unter Verwendung von Dirids.

Siehe auch

AddInterface

ClassInstall32

DDInstall

DestinationDirs

Ini2Reg

InterfaceInstall32

ProfileItems

SourceDisksFiles

SourceDisksNames

Zeichenfolgen

UpdateIniFields

Version