.reg mittels Batch-File ausführen

jasonhudgens

Cadet 3rd Year
Registriert
März 2018
Beiträge
53
Liebes Community
Ich bringe es einfach nicht hin eine .bat Datei zu erstellen, die mir im selben Ordner eine .reg Datei ausführt.

REGEDIT.exe /s test.reg

Sollte doch so klappen? Beim Ausführen der Bat Datei öffnet sich zwar der Registierungs-Editor bzw. gibt die Meldung ob ich dies zulassen möchte, jedoch wird der Eintrag in die Registry nicht geschrieben. Hingegen öffne ich die test.reg per Doppelklick, so wird diese mir reingeschrieben. Somit kann es an der test.reg nicht liegen...
Jemand eine Idee?
Geht darum, dass ich in dieser .reg Datei ein Haufen von Einträge habe und nicht manuell alle adden möchte. Dient für ein Installationssetup.
 
Kommt beim Doppelklick eine "Admin-Abfrage"? Dann muss die Batch auch als Admin ausgeführt werden.
 
Bei reg import passiert garnichts.
Und ja habe es natürlich auch mit Admin-Rechte versucht zu starten
Ergänzung ()

Das komische ist auch das die Meldung "Durch das Hinzufügen von Informatioenn können Werte unbeabsichtigt geändert oder gelöscht werden, so dass Komponente nicht mehr richtig funktionieren... etc." garnicht erst erscheint.
Was ja eigentlich beim Ausführen einer .reg Datei immer auftauchen sollte.
 
Probier mal den ganzen Pfad der Regdatei anzugeben
Beispiel: REGEDIT.exe /s C:\ordern1\ordner2\test.reg (je nachdem wo deine reg liegt )
 
  • Gefällt mir
Reaktionen: jasonhudgens
Isaac42 schrieb:
Probier mal den ganzen Pfad der Regdatei anzugeben
Beispiel: REGEDIT.exe /s C:\ordern1\ordner2\test.reg (je nachdem wo deine reg liegt )

Jap hab es. Hatte die .reg Datei unter C: Program Files x86 in einem Ordner drin. Nimmt er nicht an. Kopiere ich die .reg File einfach nur ins C: dann funktioniert es.
Wo würdet ihr temporäre Dateien, die nach der Installation sowieso gelöscht werden ablegen? Sollte für Windows 10 und Windows 7 funktionieren.
 
In %temp%
Wird aber dennoch wahrscheinlich nicht von allein geleert, muss man dennoch anschubsen.

Bei sehr langen Dateipfaden verschluckt sich cmd gern mal ;) War schon immer so. Kann man erst neuerdings angeblich manuell anpassen, dass es auch mit über 256 (260) Zeichen Pfadangabe nicht meckert.
 
Ich starte einige Dinge Zeitverzögert per .bat. Der Punkt dabei zur TE Frage ist das dass was ausgeführt werden soll pro Verschachtelung/Ordner ein ´""´ benötigt...
Bei mir:
Start Afterburner nach 4sec Bitte Fokus auf die "

Dim oShell
Set oShell = WScript.CreateObject ("WSCript.shell")
WSCript.Sleep 4000
oShell.run """C:\Program Files (x86)\MSI Afterburner\MSIAfterburner.exe
"""

Verschachtelung: C:\ = 1 \ Programm Files = 2 \ MSI Afterburner = 3 also vor und und nach dem Ort der .exe oder des .bat dann halt mit """ """ Einfassen. Pro Ordner also 1 ""

Ohne Verzögerung wäre es beim Ort trotzdem so.

Beim TE wäre das wohl (0000 = Unverzögert):

Dim oShell
Set oShell = WScript.CreateObject ("WSCript.shell")
WSCript.Sleep 0000
oShell.run """C:\Windows\System32\regedt32.exe /s test.reg"""


Und die test.reg muss dann auch im System32 Ordner liegen...
 
Zuletzt bearbeitet:
Das mag für vbscripte sicherlich richtig sein, für CMD stimmt das aber nicht.

PS: exe Dateien aus system32 brauchen in keinem Ordner eine Pfadangabe, die gehen immer.
 
Zuletzt bearbeitet:
Mit PowerShell geht so etwas ohne Probleme:

PowerShell:
$StrImportPath = "C:\Blablabla\Trallalala"
$StrImportFile = "hoppsasa.reg"
Invoke-Command {Reg Import "$StrImportPath\$StrImportFile" *>&1 | Out-Null}
 
Besten dank Leute für die Mithilfe.
Habe nun eine weitere Frage bezüglich Batch Befehle. Mein Ziel ist es .exe Dateien wie VCredist passiv zu installieren, sprich ohne dass das Setup erscheint. So sieht meine bat Datei aus;
"C:\beispiel\vcredist.exe" /passive

Es erscheint jedoch trotzdem das Setup um mit weiter zu bestätigen, abzuschliessen etc.
1. Wie kann ich das ohne das Erscheinen des Setups installieren?
2. Kann ich auch in dieser .bat File mehrere Installationen ausführen lassen à la;
"C:\beispiel\vcredist2010.exe" /passive
"C:\beispiel\vcredist2012.exe" /passive
"C:\beispiel\vcredist2013.exe" /passive
etc.
 
Sollte so gehen: "C:\beispiel\vcredist2013.exe" /install /passive /norestart
Anstatt /passive koenntest du auch /quiet versuchen.
 
r15ch13 schrieb:
Sollte so gehen: "C:\beispiel\vcredist2013.exe" /install /passive /norestart
Anstatt /passive koenntest du auch /quiet versuchen.

Funktioniert leider nicht. Also es erscheint kein Dialog bzw. Setup aber es installiert nichts. Unter Programme kann ich die Installation nicht finden. Auch mit Admin-Rechte versucht zu starten.
Wie merke ich dann eigentlich dass er fertig installiert hat?
 
Zurück
Oben