IniWrite

Schreibt einen Wert oder eine Sektion in eine normale INI-Datei.

IniWrite, Wert, Dateiname, Sektion, Key
IniWrite, Paare, Dateiname, Sektion

Parameter

Wert

Ein beliebiger Wert (Zeichenkette oder Nummer), der auf der rechten Seite des Gleichheitszeichens (=) neben dem Key geschrieben werden soll.

Wenn der Text zu lang ist, kann er in mehreren kurzen Zeilen aufgeteilt werden (Fortsetzungsbereich), um ihn besser lesbar und verwaltbar zu machen.

Paare

[AHK_L 57+]: Der komplette Inhalt einer Sektion, die in die INI-Datei geschrieben werden soll, ohne [Sektionsname]-Überschrift. Key muss weggelassen werden. Paare darf keine Leerzeilen enthalten. Wenn die Sektion bereits vorhanden ist, wird alles bis zum letzten Key-Value-Paar überschrieben. Paare kann Zeilen ohne Gleichheitszeichen (=) enthalten, allerdings könnte das zu inkonsistenten Ergebnissen führen. Kommentare können in die Datei geschrieben werden, allerdings werden sie wieder entfernt, sobald man IniRead benutzt.

Dateiname

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

Sektion

Name der Sektion aus der INI-Datei. Sektionen werden mit eckigen Klammern dargestellt (die Klammern dürfen nicht in diesem Parameter stehen).

Key

Der Key-Name in der INI-Datei.

ErrorLevel

[v1.1.04+] Dieser Befehl ist in der Lage, bei Misserfolg eine Ausnahme auszulösen. Weitere Informationen finden Sie unter Laufzeitfehler.

ErrorLevel wird bei Misserfolg auf 1 und bei Erfolg auf 0 gesetzt.

Bemerkungen

Werte länger als 65.535 Zeichen können in die Datei geschrieben werden, allerdings könnte das zu inkonsistenten Ergebnissen führen, weil sie in der Regel nicht korrekt via IniRead oder anderen Anwendungen gelesen werden können.

Eine typische INI-Datei sieht wie folgt aus:

[Sektionsname]
Key=Value

Neue Dateien werden entweder mit dem Standard-ANSI-Zeichensatz des Systems oder UTF-16 erstellt, abhängig von der AutoHotkey-Version. UTF-16-Dateien könnten mit einer Leerzeile beginnen, weil die erste Zeile die UTF-16-Bytereihenfolge-Markierung (BOM) enthält. Weiter unten finden Sie eine Möglichkeit, wie man dies umgehen kann.

Unicode: IniRead und IniWrite beziehen sich zum Lesen oder Schreiben von Werten auf die externen Funktionen GetPrivateProfileString und WritePrivateProfileString. Diese Funktionen unterstützen Unicode nur in UTF-16-Dateien; alle anderen Dateien verwenden den Standard-ANSI-Zeichensatz des Systems. In Unicode-Skripten verwendet IniWrite das UTF-16-Format bei jeder neuen Datei. Wenn das unerwünscht ist, muss man sicherstellen, dass die Datei existiert, bevor IniWrite aufgerufen wird. Zum Beispiel:

FileAppend,, KeinUnicode.ini, CP0 ; Der letzte Parameter ist in den meisten Fällen optional.

Siehe auch

IniDelete, IniRead, RegWrite

Beispiel

IniWrite, Das ist ein neuer Wert, C:\Temp\MeineDatei.ini, Sektion2, Key