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

.reg-Datei mit CMD oder VBS auslesen

Frage Entwicklung Batch & Shell

Mitglied: maneich

maneich (Level 1) - Jetzt verbinden

29.10.2007, aktualisiert 18:00 Uhr, 6864 Aufrufe, 3 Kommentare

Hallo,

bin vor kurzem von WinME auf WinXP Prof. ungestiegen.

Der Umstieg und die Integration der Dateien und div. Programme aus WinME hat ja auch ganz gut geklappt.
Nur habe ich unter WinXP Probleme eine gespeicherte .reg-Datei auszulesen, unter WinME war das immer mit einer Batch oder mit VBS möglich.

Unter WinXP wird mir beim Testlauf mit einer CMD-Datei

for /f %%i in (xyz.reg) do echo %%e & pause

überhaupt nicht angezeigt, die CMD schließt sofort wieder.

Bei VBS also nach Set fs = CreateObject.... und Set f = fs.OpenTextFile..... mit

For i = 1 To 20
WScript.Echo f.ReadLine
Next

wird die erste Ausgabe mit 4 kyrillichen Zeichen ausgegeben und die weiteren 19 Zeilen werden leer ausgegeben, obwohl ab der ersten Zeile auch Daten enthalten sind.

Habe dann ermittelt, daß die .reg-Dateien im Unicode Format gespeichert werden; aber auch wenn ich diese als .txt-Datei speichere, bleibt das Unicode-Format.

Gibt es eine Möglichkeit das Auslesen dennoch zu realisieren?

Es handelt sich hier um Dateien mit ca. 15 - 20 MB, was eine manuelle Bearbeitung sehr schwierig macht.

Ich bin für jede Info dankbar, die mir hilft dieses Problem zu lösen.

MfG maneich
Mitglied: Biber
29.10.2007 um 09:17 Uhr
Moin maneich,

schon wieder montach und schon wieder Fragen nach undokumentieriten Features...

Bei der Batch-Variante kann ich eventuell helfen, bei dem VBS.Schnipsel musst Du warten, bis bastla wach ist.
Ersetze:
01.
for /f %%i in (xyz.reg) do echo %%i 
-durch-
01.
for /f "delims=" %%i in ('more xyz.reg^>con')  do @echo %%i
Erläuterung
1) Unicode-Dateien werden von more.com stillschweigend in ANSI transformiert.
2) ein "more xyz.reg" z.B. vom CMD-Prompt würde tatsächlich nach "Vollschreiben" des Bildschirms ein "-beliebige Taste für Weiter-" bringen. Duch die Umlietung mit ">con" umgehe ich das.
3) ebenso kannst Du natürlich auch die *.reg-Datei "wirklich" dauerhaft in ANSI konvertieren
mit "more xyz.reg>%temp%\xyz.Ansi" und dann diese Kopie auslesen.

Grüße
Biber
Bitte warten ..
Mitglied: bastla
29.10.2007 um 14:02 Uhr
Hallo maneich und guten Morgen !

An sich müsstest Du der VBS-"OpenTextFile"-Methode nur einen zusätzlichen Parameter "True" spendieren, um auf das Format "Unicode" zu verweisen, also etwa:
01.
Set f = fs.OpenTextFile("xyz.reg", 1, , True)
Grüße
bastla
Bitte warten ..
Mitglied: maneich
29.10.2007 um 18:00 Uhr
Hallo Biber, hallo bastla,

ich bedanke mich für Eure Antworten.

Nun ja, mit einer Batch ist das doch nicht so einfach.

Über die for-Schleife bekomme ich die Daten zwar am Bildschirm angezeigt, jedoch läuft der Bildschirm weiter bis zum Ende der Datei. Keine Chance hinter der Klammer mit do ... etwas zu verändern oder in eine Datei zu speichern.

Nur mit "more xyz.reg>xyz.ansi" geht das auch nur bedingt, d.h. es wird zwar in die Datei gespeichert, aber nachdem 2.868 MB gespeichert wurden, bleibt die CMD einfach stehen, speichert also nicht mehr weiter, und das ohne Fehlermeldung.

Mit VBS sieht das schon besser aus mit True.

Hier kann ich nun aus einer .reg-Datei die Daten die ich brauche suchen und auch finden.

Schreibe ich diese Datei in eine neue .reg-Datei so wird diese dann in ANSI-Codierung angelegt. Diese Datei kann ich dann über "Speichern unter" auch wieder in Unicode-Codierung umändern.

Bleibt nur noch die Frage ob die Änderung der Codierung Ansi > Unicode so auch fehlerfrei ist.

Also nochmals meinen besten Dank an euch beide und bis zum nächsten mal.

MfG maneich
Bitte warten ..
Ähnliche Inhalte
VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

Entwicklung
Zählerstände über SNMP und VBS auslesen (4)

Frage von motofuzy zum Thema Entwicklung ...

Windows Userverwaltung
gelöst Gruppenmitgliedschaft einer AD Gruppe per cmd auslesen (2)

Frage von RamboJay zum Thema Windows Userverwaltung ...

Windows Userverwaltung
gelöst Logon Script mit einer .reg Datei (7)

Frage von Kathaki zum Thema Windows Userverwaltung ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Firewall
Richtige Grundeinstellungen der Pfsense für mein Netzwerk (12)

Frage von Spitzbube zum Thema Firewall ...

Switche und Hubs
gelöst Cisco 2960x Stacking über mehrere Etagen (12)

Frage von b3scher zum Thema Switche und Hubs ...