Scriptgesteuerte Registrymanipulation über
reg import something.reg
, schön und gut. Aber über folgende Fehler könnte man stolpern.
Die Registry dient häufig als Ablage für Programmeinstellungen, auch für laufende Dienste. Möchte man nun scriptgesteuert die Einstellungen des Dienstes ändern kann es zu folgendem Fehler kommen: „Der Prozess kann auf die Datei nicht zugreifen, da diese von einem anderen Prozess verwendet wird„.
Was dagegen tun? Den Dienst vor dem Reg Import beenden.
@echo off
net stop tvnserver
reg import \\server\pfad\new-config.reg
net start tvnserver
Sollte dabei der Fehler „Fehler beim Zugriff auf die Registrierung.“ auftreten fehlen für den Import vermutlich die Rechte, also als Administrator starten.
Sollte
reg import
den Fehler „Fehler beim öffnen der Datei. Es ist möglicherweise ein Datenträger- bzw. Dateisystemfehler aufgetreten.“ ausspucken, enthält der Pfad zu eurer .reg Datei wahrscheinlich ein Leerzeichen. Setzt die Pfadangabe in Anführungszeichen oder benennt den Leerzeichen-Ordner um.
Hey,
bei mir kommt leider der Fehler, dass ich bei dem Export eines Registryeintrags den Fehler bekomme, dass ein Datenträger- bzw. Dateisystemfehler aufgetreten ist. Ich den Eintrag in „“ gesetzt und auch die SID überprüft. Gibt es sonst noch Möglichkeiten den Fehler zu beheben?
Gruß
tzabbi
Hallo tzabbi,
meine Vermutung ist, dass dein Fehler mit „Mögliche Ursache ist ein Datenträger oder Dateisystemfehler.“ endet?
Ein wenig googeln legt folgende erste Prüfungen ans Herz:
LG
Hallo,
ich habe ein Problem mit dem reg import:
Manche *.reg-Dateien ergeben eine Fehlermeldung direkt in der Konsole, da ich das Ganze über eine *.cmd-Datei bewerkstellige.
Den/die Fehler finde ich aber nicht… Kann man nicht irgendwie den Fehler beispielsweise in eine *.txt-Datei während der Ausführung des *.cmd-Scripts schreiben oder etwas ähnliches?
Nachfolgend mein bisheriges Herumdoktern mit Erklärungen und der Bitte um Hilfe.
Dies hier habe ich mal zusammengestellt:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
@echo on
set LOGFILE=batch.log call :LOG > %LOGFILE% exit /B :LOG
reg import D:\KeepDesktopIcons\001.reg
Timeout 2
reg import D:\KeepDesktopIcons\AVI.reg
pause
exit
****************************************************************************************************
Das hier ist nun die Ausgabe am Bildschirm ( wegen „pause“ bleibt das Fenster ja geöffnet )
als copy and paste unten angefügt. Log-Datei kann ich nirgendwo finden…vielleicht mein Syntaxfehler ?!
Hier ist interessant zu sehen, daß plötzlich AUCH die Namen der *.reg-Dateien aufgelistet werden.
Ich hatte bislang z.B. die 2. *.reg-Datei ( also „AVI.reg ) zwar nicht sehen können, wie ich es ja schon schilderte,
allerdingens gab es genau HIER ( 2. reg import ) üblicherweise den 1. FEHLER )
Kann man diese log-Datei auch ganz einfach in eine Textdatei schreiben?
****************************************************************************************************
C:\WINDOWS\system32>set LOGFILE=batch.log call :LOG /B :LOG 1>exit
C:\WINDOWS\system32>reg import D:\KeepDesktopIcons\001.reg
Der Vorgang wurde erfolgreich beendet.
C:\WINDOWS\system32>Timeout 2
Gewartet wird 0 Sekunden. Weiter mit beliebiger Taste…
C:\WINDOWS\system32>reg import D:\KeepDesktopIcons\AVI.reg
Der Vorgang wurde erfolgreich beendet.
C:\WINDOWS\system32>pause
Drücken Sie eine beliebige Taste . . .
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Den ganzen lieben langen Tag habe ich vergeblich versucht, etwas im Netz zu finden…leider ohne Erfolg.
Wenn Du also noch etwas rauskriegst, wäre ich Dir sehr dankbar. Ich bin mit meinem Latein erst einmal am Ende…