Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Registry Key auslesen, ändern und wieder einfügen

Frage Entwicklung Batch & Shell

Mitglied: kafri84

kafri84 (Level 1) - Jetzt verbinden

08.08.2007, aktualisiert 13.08.2007, 14799 Aufrufe, 6 Kommentare

Hallo zusammen,

nachdem ich über die Suche nichts richtiges gefunden habe, muss ich mein Problem hier schildern.
Vorneweg sei gesagt, dass ich auf diesem Gebiet Anfänger bin...

Ich möchte mit einem Script einen bestimmten Wert eines Reg-Key bearbeiten.
Und zwar habe unter HKLM\Software\Microsoft\Windows\CurrentVersion einen Eintrag der sich DevicePath nennt.
Dort sind viele Pfadangaben hinterlegt. Der Wert des Eintrags sieht dann ungefähr so aus:
"C:\Windows\Drivers\Printer;C:\Windows\Drivers\USB;C:\Windows\Drivers\Video" usw...

Ich betreue hier eine Vielzahl von Client, bei denen diese Pfade immer anders aussehen können oder auch eine andere Reihenfolge haben können.
Nun möchte ich aber einen Pfadnamen ändern.

Z.B. aus C:\Windows\Drivers\Printer wird C:\Windows\Drivers\Drucker

Gleichzeitig soll der Eintrag an der Stelle bleiben, wo er vorher auch war, also in diesem Fall an 1. Stelle.

Kann mir jemand bei diesem Problem helfen? Ich habe echt keine Ahnung wie ich da ran gehen soll..

Danke schonmal im Voraus!

kafri84
Mitglied: bastla
08.08.2007 um 11:14 Uhr
Hallo kafri84!

Das könnte etwa so gehen:
01.
@echo off & setlocal enabledelayedexpansion 
02.
set "Key=HKLM\Software\Microsoft\Windows\CurrentVersion" 
03.
set "Value=DevicePath" 
04.
set "old=C:\Windows\Drivers\Printer" 
05.
set "new=C:\Windows\Drivers\Drucker" 
06.
for /f "tokens=3" %%i in ('reg query %Key% /v %Value%') do set "Data=%%i" 
07.
reg add %Key% /v %Value% /t REG_EXPAND_SZ /d !Data:%old%=%new%! /f>nul
Anmerkung: Falls einer der eingetragenen Pfade ein "!" enthält, können die Variablen %old% und %new% nicht verwendet werden und der Batch müsste etwa so aussehen:
01.
@echo off & setlocal 
02.
set "Key=HKLM\Software\Microsoft\Windows\CurrentVersion" 
03.
set "Value=DevicePath" 
04.
for /f "tokens=3" %%i in ('reg query %Key% /v %Value%') do set "Data=%%i" 
05.
reg add %Key% /v %Value% /t REG_EXPAND_SZ /d %Data:C:\Windows\Drivers\Printer=C:\Windows\Drivers\Drucker% /f>nul
Grüße
bastla
Bitte warten ..
Mitglied: kafri84
10.08.2007 um 08:13 Uhr
Hi bastla,

danke erstmal für deine Hilfe.

Aber irgendwie funktioniert das nicht so richtig.
Nachdem ich den Batch ausgeführt habe, sind alle Einträge verschwunden, es steht dann nur C:\Windows\Driver (das sind die Reste vom Pfad C:\Windows\Driver Cache) drin...

Woran kann das liegen?

Danke

Gruß

kafri84
Bitte warten ..
Mitglied: bastla
10.08.2007 um 08:31 Uhr
Hallo kafri84!

Ändere durch Hinzufügen der Anführungszeichen die letzte Zeile auf
01.
reg add %Key% /v %Value% /t REG_EXPAND_SZ /d "%Data:C:\Windows\Drivers\Printer=C:\Windows\Drivers\Drucker%" /f>nul
Grüße
bastla
Bitte warten ..
Mitglied: kafri84
10.08.2007 um 09:09 Uhr
Hallo!

das hat leider auch nichts geändert. Sieht immer noch genauso aus...
Bitte warten ..
Mitglied: bastla
10.08.2007 um 23:15 Uhr
Hallo kafri84!

Dann vielleicht so:
01.
@echo off & setlocal 
02.
set "Key=HKLM\Software\Microsoft\Windows\CurrentVersion" 
03.
set "Value=DevicePath" 
04.
for /f "tokens=2*" %%i in ('reg query %Key% /v %Value%') do set "Data=%%j" 
05.
reg add %Key% /v %Value% /t REG_EXPAND_SZ /d "%Data:C:\Windows\Drivers\Printer=C:\Windows\Drivers\Drucker%" /f>nul
Grüße
bastla
Bitte warten ..
Mitglied: kafri84
13.08.2007 um 07:26 Uhr
Hallo bastla,

hab es gerade mal getestet. Mit Erfolg!

Ich danke dir für deine Mühe!

Gruß

kafri84
Bitte warten ..
Ähnliche Inhalte
Festplatten, SSD, Raid
gelöst Windows 7 Pro x64 Key aus einer (fast) kaputten HDD auslesen (7)

Frage von carbon1X zum Thema Festplatten, SSD, Raid ...

Batch & Shell
gelöst Variable per Batch auslesen und in Registry schreiben (1)

Frage von Zendara zum Thema Batch & Shell ...

Batch & Shell
gelöst Registry per Batch abfragen und INI Einträge hinzufügen bzw. ändern (18)

Frage von kampen zum Thema Batch & Shell ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(29)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

Webbrowser
Windows 7 unbeliebte Internetseite sperren (13)

Frage von Daoudi1973 zum Thema Webbrowser ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...

Webbrowser
Internet Explorer schliesst direkt bei Start (10)

Frage von gabeBU zum Thema Webbrowser ...