Jump to content

Mit reg.exe Eintrag erweitern


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo zusammen,

 

folgendes Problem, ich müsste über die reg.exe einen Eintrag in der Registrie erweitern. Es geht hier um folgenden Eintrag:

 

HKLM\SYSTEM\ControlSet001\Control\Session Manager\Environment\Path

 

Unter "Path" sind je bereits schon Einträge gesetzt. Hier müsste ich einen Eintrag hinzufügen, ohne das die bestehen Einträge für die Variable Path gelöscht werden.

 

Kann mir hier jemand weiter helfen?

 

Gruß

Michael

Geschrieben

Das hab ich mir irgendwann mal zusammen gebastelt. Ist vielleicht bisschen groß (die ganzen Ausgaben sind ja ansich unnötig) aber du kannst es ja an deine Bedürfnisse anpassen

 

@echo off

CLS

echo.
echo.
echo Skript zum Erweitern eines bestehenden Registry-Werts
echo ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
echo.
echo.
echo.


REM ~ Variablen
REM ~ Root-Key
set vRegKey=HKLM
REM ~ Sub-Key
set vSubKey=Software\Microsoft\Windows\CurrentVersion\Run
REM ~ Wert
set vValue=foo_value
REM ~ Daten die angehängt werden sollen
set vAddVal=foo
REM ~ Trennzeichen
set vSeperator=;
REM ~ für später
set vTmpVal=


REM ~ existiert der angegebene Wert?
reg query "%vRegKey%\%vSubKey%" /v "%vValue%" | find /i "%vValue%">nul
if %errorlevel%==1 goto _end



REM ~ bestehenden Wert auslesen
for /f "tokens=2,*" %%i in ('reg query "%vRegKey%\%vSubKey%" /v "%vValue%"^|find /i "%vValue%"') do set "vTmpVal=%%j"
echo Aktueller Wert von '%vRegKey%\%vSubKey%\%vValue%'
echo %vTmpVal%
echo.
echo.


REM ~ neuen Wert zusammen setzen
set vTmpVal=%vTmpVal%%vSeperator%%vAddVal%


REM ~ neuen Wert in Registry schreiben
reg add "%vRegKey%\%vSubKey%" /v "%vValue%" /d "%vTmpVal%" /f >nul
echo Wert wurde mit '%vAddVal%' erweitert...
echo.
echo.


REM ~ neuen Wert auslesen
for /f "tokens=2,*" %%i in ('reg query "%vRegKey%\%vSubKey%" /v "%vValue%"^|find /i "%vValue%"') do set "vTmpVal=%%j"
echo Neuer Wert von '%vRegKey%\%vSubKey%\%vValue%'
echo %vTmpVal%
echo.
echo.


:_end
REM ~ kurze Pause zum lesen...
ping -n 11 localhost>nul

Geschrieben

Hallo Michael,

Mit der PS sinds noch 3 Zeilen

 

$a=(get-itemproperty "HKLM:\SYSTEM\ControlSet001\Control\Session Manager\Environment").path
$a=$a+";c:\test"
set-itemproperty -path "HKLM:\SYSTEM\ControlSet001\Control\Session Manager\Environment" -name path1 -value $a -type string

 

 

cu

blub

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...