RegWrite

Schreibt einen Wert in die Registry.

Neue Syntax [v1.1.21+]

RegWrite, WertTyp, SchlüsselName , WertName, Wert

Parameter

WertTyp

Muss entweder REG_SZ, REG_EXPAND_SZ REG_MULTI_SZ, REG_DWORD oder REG_BINARY sein.

SchlüsselName

Der vollständige Name des Registry-Schlüssels, z.B. HKLM\Software\BeliebigeApp.

Der Name muss entweder mit HKEY_LOCAL_MACHINE (oder HKLM), HKEY_USERS (oder HKU), HKEY_CURRENT_USER (oder HKCU), HKEY_CLASSES_ROOT (oder HKCR) oder HKEY_CURRENT_CONFIG (oder HKCC) beginnen.

Um auf eine Remote-Registry zuzugreifen, stellen Sie den Computernamen und einen Doppelpunkt (oder in [v1.1.21+] einen umgekehrten Schrägstrich) voran, z.B. \\workstation01\HKLM.

WertName

Wenn leer oder weggelassen, wird der Standardwert von SchlüsselName verwendet - das ist der Wert, den RegEdit als "(Standard)" anzeigt. Andernfalls geben Sie den Namen des zu schreibenden Wertes an.

Wert

Wenn leer oder weggelassen, wird je nach WertTyp standardmäßig eine leere Zeichenkette oder 0 verwendet. Andernfalls geben Sie den zu schreibenden Wert an. 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.

Alte Syntax

Veraltet: Diese Syntax ist nicht für neue Skripte empfohlen. Verwenden Sie stattdessen die oben beschriebene neue Syntax.

RegWrite, WertTyp, RootSchlüssel, UnterSchlüssel , WertName, Wert

Parameter

WertTyp

Muss entweder REG_SZ, REG_EXPAND_SZ REG_MULTI_SZ, REG_DWORD oder REG_BINARY sein.

RootSchlüssel

Muss entweder HKEY_LOCAL_MACHINE (oder HKLM), HKEY_USERS (oder HKU), HKEY_CURRENT_USER (oder HKCU), HKEY_CLASSES_ROOT (oder HKCR) oder HKEY_CURRENT_CONFIG (oder HKCC) sein.

Um auf eine Remote-Registry zuzugreifen, stellen Sie den Computernamen und einen Doppelpunkt (oder in [v1.1.21+] einen umgekehrten Schrägstrich) voran, z.B. \\workstation01\HKLM.

UnterSchlüssel

Name des Unterschlüssels, z.B. Software\BeliebigeApp. Wenn UnterSchlüssel nicht existiert, wird er erstellt (einschließlich seiner Elternelemente, falls nötig). Lässt man UnterSchlüssel leer, wird der Wert direkt in RootSchlüssel geschrieben (obwohl einige Betriebssysteme sich weigern, in die oberste Ebene von HKEY_CURRENT_USER zu schreiben).

WertName

Wenn leer oder weggelassen, wird der Standardwert von UnterSchlüssel verwendet - das ist der Wert, den RegEdit als "(Standard)" anzeigt. Andernfalls geben Sie den Namen des zu schreibenden Wertes an.

Wert

Wenn leer oder weggelassen, wird je nach WertTyp standardmäßig eine leere Zeichenkette oder 0 verwendet. Andernfalls geben Sie den zu schreibenden Wert an. 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.

Fehlerbehandlung

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

A_LastError wird auf das Ergebnis der Systemfunktion GetLastError() gesetzt.

Bemerkungen

Wenn WertTyp REG_DWORD ist, muss für Wert eine Zahl zwischen -2147483648 und 4294967295 (0xFFFFFFFF) angegeben werden. REG_DWORD-Werte sind in der Registry immer positive Dezimalzahlen. Um einen REG_DWORD-Wert als negative Zahl mit Mitteln wie RegRead zu lesen, wandeln Sie ihn mit AusgabeVar := AusgabeVar << 32 >> 32 o.ä. in einen vorzeichenfähigen 32-Bit-Integer um.

Wenn ein REG_BINARY-Schlüssel geschrieben wird, muss eine Zeichenkette aus hexadezimalen Zeichen angegeben werden, wie z.B. 01A9FF77 für den REG_BINARY-Wert 01,a9,ff,77.

Wenn ein REG_MULTI_SZ-Schlüssel geschrieben wird, müssen alle Komponenten mit einem LF-Zeichen (`n) voneinander getrennt werden. Die letzte Komponente darf ebenfalls mit einem LF-Zeichen enden. Leere Komponenten sind nicht erlaubt. Mit anderen Worten, vermeiden Sie zwei aufeinanderfolgende LF-Zeichen (`n`n), um zu verhindern, dass ein unerwartet kurzer Wert in die Registry geschrieben wird.

[v1.1.10.01+]: REG_BINARY- und REG_MULTI_SZ-Werte größer als 64 KB werden ebenfalls unterstützt. In älteren Versionen werden sie auf 64 KB gekürzt.

Mit der Registry-Schleife können mehrere Registry-Schlüssel und -Werte abgerufen und bearbeitet werden.

In den Bemerkungen zur Registry-Schleife finden Sie Informationen darüber, wie auf die Registry eines Remote-Computers zugegriffen werden kann.

Um Einträge in den 64-Bit-Bereichen der Registry mit einem 32-Bit-Skript (oder umgekehrt) zu lesen und zu schreiben, verwenden Sie SetRegView.

RegDelete, RegRead, Registry-Schleife, SetRegView, IniWrite

Beispiele

Neue Syntax vs. alte Syntax.

Trotz unterschiedlicher Syntax haben beide Beispiele den gleichen Effekt: Sie schreiben einen Wert in die Registry.

RegWrite, REG_SZ, HKEY_LOCAL_MACHINE\SOFTWARE\TestSchlüssel, MeinWertName, Testwert
RegWrite, REG_SZ, HKEY_LOCAL_MACHINE, SOFTWARE\TestSchlüssel, MeinWertName, Testwert

Schreibt Binärdaten in die Registry.

RegWrite, REG_BINARY, HKEY_CURRENT_USER\Software\TEST_APP, TEST_NAME, 01A9FF77

Schreibt eine mehrzeilige Zeichenkette in die Registry.

RegWrite, REG_MULTI_SZ, HKEY_CURRENT_USER\Software\TEST_APP, TEST_NAME, Zeile1`nZeile2