IniWrite

Schreibt einen Wert oder eine Sektion in eine INI-Datei im Standardformat.

IniWrite Wert, DateiName, Sektion, Schlüssel
IniWrite Paare, DateiName, Sektion

Parameter

Wert

Typ: Zeichenkette

Eine Zeichenkette oder Zahl, die rechts neben das Gleichheitszeichen (=) von Schlüssel geschrieben werden soll.

Wenn der Text relativ lang ist, kann er via Fortsetzungsbereich in mehrere kurze Zeilen aufgeteilt werden, um die Übersichtlichkeit und Wartbarkeit des Skripts zu verbessern.

Paare

Typ: Zeichenkette

Der komplette Inhalt einer Sektion, die in die INI-Datei geschrieben werden soll, ohne [SektionName]-Überschrift. Schlüssel muss weggelassen werden. Paare darf keine Leerzeilen enthalten. Wenn die Sektion bereits existiert, wird alles bis zum letzten Schlüssel-Wert-Paar überschrieben. Paare kann Zeilen ohne Gleichheitszeichen (=) enthalten, was aber zu inkonsistenten Ergebnissen führen kann. Es können Kommentare in die Datei geschrieben werden, diese werden jedoch entfernt, sobald IniRead verwendet wird.

DateiName

Typ: Zeichenkette

Name der INI-Datei. Wenn kein absoluter Pfad angegeben ist, wird die Datei im A_WorkingDir-Verzeichnis vermutet.

Sektion

Typ: Zeichenkette

Name einer Sektion in der INI-Datei, erkennbar an den eckigen Klammern (die Klammern müssen in diesem Parameter weggelassen werden).

Schlüssel

Typ: Zeichenkette

Name eines Schlüssels in der INI-Datei.

Fehlerbehandlung

Bei Misserfolg wird ein OSError ausgelöst.

A_LastError wird immer auf das Ergebnis der Systemfunktion GetLastError() gesetzt, unabhängig davon, ob eine Ausnahme ausgelöst wird oder nicht.

Bemerkungen

Es können Werte länger als 65535 Zeichen in die Datei geschrieben werden, allerdings kann das zu inkonsistenten Ergebnissen führen, da sie in der Regel von IniRead oder anderen Anwendungen nicht korrekt gelesen werden können.

Eine typische INI-Datei sieht wie folgt aus:

[SektionName]
Schlüssel=Wert

Neue Dateien werden mit einer UTF-16-Byte-Order-Markierung erstellt, um sicherzustellen, dass alle Unicode-Zeichen verwendet werden können. Wenn das nicht erwünscht ist, müssen Sie sicherstellen, dass die Datei existiert, bevor Sie IniWrite aufrufen. Zum Beispiel:

; Eine Datei mit ANSI-Kodierung erstellen.
FileAppend "", "KeinUnicode.ini", "CP0"

; Eine UTF-16-Datei ohne Byte-Order-Markierung erstellen.
FileAppend "[SektionName]`n", "Unicode.ini", "UTF-16-RAW"

Unicode: IniRead und IniWrite verwenden die externen Funktionen GetPrivateProfileString und WritePrivateProfileString, um Werte zu lesen oder zu schreiben. Diese Funktionen unterstützen Unicode nur in UTF-16-Dateien; alle anderen Dateien verwenden die Standard-ANSI-Codepage des Systems.

IniDelete, IniRead, RegWrite

Beispiele

Schreibt ein Schlüssel-Wert-Paar in Sektion2 einer INI-Datei im Standardformat.

IniWrite "Das ist ein neuer Wert", "C:\Temp\MeineDatei.ini", "Sektion2", "Schlüssel"