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

Export von mehreren Tausend registry-Einträgen per batch

Frage Entwicklung Batch & Shell

Mitglied: Nachtexpress

Nachtexpress (Level 1) - Jetzt verbinden

02.01.2008, aktualisiert 16:26 Uhr, 6802 Aufrufe, 3 Kommentare

Hallo!

Ich möchte per batch mehrere Tausend registry-Einträge von Programmen exportieren.
Ich habe es geschafft, diese Einträge mit einigen Tricks in eine Liste dieser Form zu exportieren:

"HKEY_CLASSES_ROOT\Interface\{083039C2-13F4-11D1-8B7E-0000F8754DA1}\(Default)"
"HKEY_CLASSES_ROOT\Interface\{083039C2-13F4-11D1-8B7E-0000F8754DA1}\ProxyStubClsid\(Default)"
"HKEY_CLASSES_ROOT\Interface\{083039C2-13F4-11D1-8B7E-0000F8754DA1}\TypeLib\Version"

Diese Registry-Einträge sind leider in so vielen verschiedenen Schlüsseln (>1000) verteilt, dass es nicht mehr möglich ist, diese "human" per Hand zu exportieren und zusammenzufügen.

Ich habe schon auf verschiedenste weise versucht, diese mit einer for-Schleife der Art:

set p=1
for %%d in schluessel.lst do (
regedit.exe /E %%p.reg %%d
set /a p=%%p+1
)

in einzelne .reg dateien zu exportieren, die ich dann weiterverarbeiten kann.
Ich habe auch mit der Verzögerten Variablenerweiterung (cmd /V) experimentiert, aber es nicht hinbekommen.

Mir ist auch aufgefallen, dass nicht einmal die Datei 1.reg erstellt wird, obwohl der Befehl mehrfach erfolgreich mit der Datei 1.reg ausgeführt wird.

Könnt ihr mir weiterhelfen?

Gruß

Nils
Mitglied: mcp-lpic2
02.01.2008 um 14:01 Uhr
Hallo Nils,

zunächst verstehe ich erst einmal nicht, warum Du unbedingt die Registry per Batch
auslesen willst.

Der einzige Grund könnte meines Erachtens ein nicht mehr richtig funktionierendes
WINDOWS System (Startprobleme oder ähnliches sein).

Im Normalfall gibt es eine recht simple Lösung.

Man geht in die Windows Registry und exportirt den Schlüssel INTERFACE in eine
entsprechende Datei INTERFACE.REG.

Diese Datei kann dann in eine Datei INTERFACE.TXT umbenannt werden.

Diese Datei müßte dann mit anderen Tools bearbeitet werden, um die Einträge wie gewünscht
zu separieren.

Am einfachsten wäre es da sicherlich sich ein kleines Programm zu schreiben, dass die Datei
INTERFACE.TXT einliest und die Einträge prüft und danach in die gewünschten separaten
Dateien schreibt.

Sonst fällt mir dazu keine Lösung ein.


Mit freundlichen Grüßen


MCP-LPIC2
Bitte warten ..
Mitglied: bastla
02.01.2008 um 14:48 Uhr
Hallo Nachtexpress und willkommen im Forum!

Da Du anscheinend wirklich > 1000 .reg-Dateien erzeugen willst, könntest Du es so versuchen:
01.
@echo off & setlocal 
02.
set /a p=10001 
03.
for /f "delims=" %%d in (schluessel.lst) do call :ProcessLine "%%~d" 
04.
goto :eof 
05.
 
06.
:ProcessLine 
07.
regedit.exe /E %p:~-4%.reg %1 
08.
set /a p+=1
Zur Sicherheit vielleicht erst einmal mit einer gekürzten "schluessel.lst" testen ...

Grüße
bastla
Bitte warten ..
Mitglied: Nachtexpress
02.01.2008 um 16:26 Uhr
@mcp-lpic2

Hi

ich experimentiere zur Zeit mit Möglichkeiten, verschiedenste Software plattformunabhängig, modifiziert und komplett vorkonfiguriert schnell und automatisiert auf Workstations und spezialisierten Boxen installieren zu lassen bzw updates durchführen zu lassen.

Das Problem lässt sich dementsprechend nicht durch den export aller Interface-unterschlüssel lösen, weil pro programm nur wenige, aber viele verschiedene (über die ganze registrierung verteilt) betroffen sind.

Trotzdem danke für deinen Vorschlag!

@bastla

Dein Programm liefert genau das gleiche resultat wie meins - (ich stells hier mal exakt hin, falls es jemand interessiert:
SETLOCAL EnableDelayedExpansion

set r=1

FOR /F %%o IN (liste.lst.csv) DO (
regedit /E %r%.reg %%o
call super
)

:super
set /A r=%r%+1

Nachdem auch so nichts rauskam habe ich nochmal alles überdacht und auch die Liste als Fehlerquelle in betracht gezogen:

Es stellte sich heraus, dass das Problem war, dass in der Liste nach den Schlüsseln noch die Werte standen (nicht nur die Schlüssel) und regedit deshalb ohne kommentar die Arbeit verweigerte.


Damit hätte sich der Fehler gefunden, sowohl bastlas als auch mein Programm funktionieren genau wie erwartet.


Gruß

Nils
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Windows Systemdateien
gelöst Registry-Schlüssel per Batch auslesen und in Datei schreiben (9)

Frage von Philzip zum Thema Windows Systemdateien ...

Batch & Shell
Dateinamen nach Zeichnen abschneiden - Batch-Shell (9)

Frage von cberndt zum Thema Batch & Shell ...

Batch & Shell
CMD Verschlüsslung ( Batch ) (10)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (13)

Frage von JayyyH zum Thema Switche und Hubs ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Backup
Clients als Server missbrauchen? (9)

Frage von 1410640014 zum Thema Backup ...

Windows Server
Mailserver auf Windows Server 2012 (9)

Frage von StefanT81 zum Thema Windows Server ...