Variable in Regedit
Hallo zusammen,
ich muss eine Reg Datei per regedit.exe importieren die eine Variable %Username% enthält. Leider wird die Variable nicht aufgelöst beim Import.
[HKEY_CURRENT_USER\Software\Adobe\Common 11.0\Media Cache]
"DatabasePath"="C:\\Adobe\\Medien Cache Datenbank\\%Username%"
"FolderPath"="C:\\Adobe\\Medien Cache Datenbank\\%Username%"
Leider ist Reg Add per Gruppenrichtlinie gesperrt so das dies also ausscheidet. Hat jemand eine Idee wie das funktionieren könnte.
ich muss eine Reg Datei per regedit.exe importieren die eine Variable %Username% enthält. Leider wird die Variable nicht aufgelöst beim Import.
[HKEY_CURRENT_USER\Software\Adobe\Common 11.0\Media Cache]
"DatabasePath"="C:\\Adobe\\Medien Cache Datenbank\\%Username%"
"FolderPath"="C:\\Adobe\\Medien Cache Datenbank\\%Username%"
Leider ist Reg Add per Gruppenrichtlinie gesperrt so das dies also ausscheidet. Hat jemand eine Idee wie das funktionieren könnte.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 336055
Url: https://administrator.de/contentid/336055
Ausgedruckt am: 24.11.2024 um 18:11 Uhr
7 Kommentare
Neuester Kommentar
Einen REG_EXPAND_SZ Wert benutzen, dann werden Umgebungsvariablen beim Abfragen aufgelöst.
https://msdn.microsoft.com/de-de/library/windows/desktop/ms724884(v=vs.8 ...
Gruß
https://msdn.microsoft.com/de-de/library/windows/desktop/ms724884(v=vs.8 ...
Gruß
Zitat von @MeinSenfDazu:
so funktioniert das leider nicht. Ich habe nur die Möglichkeit per Regedit über eine Batch den Wert zu schreiben.
Doch, erstelle die Werte Testweise in Regedit als REG_EXPANS_SZ, exportiere die Einträge (mit eingetragenem %username%) als *.reg und dann importierst du sie damit.so funktioniert das leider nicht. Ich habe nur die Möglichkeit per Regedit über eine Batch den Wert zu schreiben.
In Reg-Dateien werden keine Umgebungsvariablen aufgelöst, sie werden aber interpretiert wenn man stattdessen einen REG_EXPANS_SZ Wert anlegt!
Ansonsten ein Replace der Umgebungsvariablen in der Textdatei machen.
@echo off & setlocal ENABLEDELAYEDEXPANSION
set "regfile=D:\datei.reg"
>"%temp%\tmp.reg" (for /f "tokens=1,* delims=:" %%a in ('findstr /n "^" "%regfile%"') DO call set line=%%b & echo(!line!)
reg import "%temp%\tmp.reg"
Zitat von @132895:
Doch, erstelle die Werte Testweise in Regedit als REG_EXPANS_SZ, exportiere die Einträge (mit eingetragenem %username%) als *.reg und dann importierst du sie damit.
In Reg-Dateien werden keine Umgebungsvariablen aufgelöst, sie werden aber interpretiert wenn man stattdessen einen REG_EXPANS_SZ Wert anlegt!
Doch, erstelle die Werte Testweise in Regedit als REG_EXPANS_SZ, exportiere die Einträge (mit eingetragenem %username%) als *.reg und dann importierst du sie damit.
In Reg-Dateien werden keine Umgebungsvariablen aufgelöst, sie werden aber interpretiert wenn man stattdessen einen REG_EXPANS_SZ Wert anlegt!
Das funktionier leider nicht. Ich habe einen neuen Wert (REG_EXPAND_SZ) mit %username% eingetragen und exportiert. Danach Registry-Eintrag gelöscht und wieder importiert. Nach dem Import steht noch immer %username%. Jemand noch eine Idee?
Zitat von @anandax:
Das funktionier leider nicht. Ich habe einen neuen Wert (REG_EXPAND_SZ) mit %username% eingetragen und exportiert. Danach Registry-Eintrag gelöscht und wieder importiert. Nach dem Import steht noch immer %username%. Jemand noch eine Idee?
Das funktionier leider nicht. Ich habe einen neuen Wert (REG_EXPAND_SZ) mit %username% eingetragen und exportiert. Danach Registry-Eintrag gelöscht und wieder importiert. Nach dem Import steht noch immer %username%. Jemand noch eine Idee?
Doch das funktioniert. Die werden aber erst aufgelöst sobald der Key von einem Programm abfragt wird! In der Registry selbst steht immer die Variable. Willst du das nicht mach es mit reg add in einer Batch oder einem Powershell-Skript
Zitat von @7426148943:
Doch das funktioniert. Die werden aber erst aufgelöst sobald der Key von einem Programm abfragt wird! In der Registry selbst steht immer die Variable. Willst du das nicht mach es mit reg add in einer Batch oder einem Powershell-Skript
Doch das funktioniert. Die werden aber erst aufgelöst sobald der Key von einem Programm abfragt wird! In der Registry selbst steht immer die Variable. Willst du das nicht mach es mit reg add in einer Batch oder einem Powershell-Skript
Du hast Recht. AutoCAD hat es entsprechend umgesetzt. Wieder etwas gelernt. Danke.
Bitte, gerne.