Folgendes funktioniert bei mir wunderbar:
Spoiler anzeigen
[autoit]
_SETENV("Test", "Wert", False)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]Func _SETENV($sName, $sValue, $bGlobal = True)
If $bGlobal Then
Local $sKey = "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment"
Else
Local $sKey = "HKCU\Environment"
EndIf
RegWrite($sKey, $sName, "REG_SZ", $sValue)
EnvUpdate()
EndFunc
Die folgende Abfrage über die Kommandozeile mit "set Test" ist dann korrekt.
Natürlich klappt das nur wenn die Kommandozeile ("cmd") erst NACH dem Ausführen des Skriptes geöffnet wird, da die Umgebungsvariablen für Programme beim Start dieser übergeben werden.