Freigeben über


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