Batch zum Program-Start
Hallo,
komme hier nicht zum erforderlichen Ergebnis,daß nach dem Eintrag in der Registry das Programm,User bezogen, gestartet wird.
hier mein Skript:
title ACADTweak
SET TweakPath = "%cd%\ACAD_Profil.reg"
regedit /s "%TweakPath%" >NUL
"C:\Programme\Autodesk\AutoCAD 2011\acad.exe %1 -p "%USERNAME%" >NUL
Kann mir bitte jemand weiterhelfen?
ManneKl
komme hier nicht zum erforderlichen Ergebnis,daß nach dem Eintrag in der Registry das Programm,User bezogen, gestartet wird.
hier mein Skript:
title ACADTweak
SET TweakPath = "%cd%\ACAD_Profil.reg"
regedit /s "%TweakPath%" >NUL
"C:\Programme\Autodesk\AutoCAD 2011\acad.exe %1 -p "%USERNAME%" >NUL
Kann mir bitte jemand weiterhelfen?
ManneKl
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 264049
Url: https://administrator.de/forum/batch-zum-program-start-264049.html
Ausgedruckt am: 23.12.2024 um 04:12 Uhr
30 Kommentare
Neuester Kommentar
Hallo
Kann es sein, dass hier ein Anführungszeichen fehlt?
"C:\Programme\Autodesk\AutoCAD 2011\acad.exe %1" -p "%USERNAME%" >NUL
Ansonsten wären ein paar Infos mehr hilfreich: Fehlermeldung?
Gruss Urs
title ACADTweak
SET TweakPath = "%cd%\ACAD_Profil.reg"
regedit /s "%TweakPath%" >NUL
"C:\Programme\Autodesk\AutoCAD 2011\acad.exe %1 -p "%USERNAME%" >NUL
SET TweakPath = "%cd%\ACAD_Profil.reg"
regedit /s "%TweakPath%" >NUL
"C:\Programme\Autodesk\AutoCAD 2011\acad.exe %1 -p "%USERNAME%" >NUL
Kann es sein, dass hier ein Anführungszeichen fehlt?
"C:\Programme\Autodesk\AutoCAD 2011\acad.exe %1" -p "%USERNAME%" >NUL
Ansonsten wären ein paar Infos mehr hilfreich: Fehlermeldung?
Gruss Urs
Hi,
@Meierjo
Ja, hast recht, machst aber den selben Fehler!
Das zweite " muss nach dem ".exe".
E.
@Meierjo
Ja, hast recht, machst aber den selben Fehler!
Das zweite " muss nach dem ".exe".
"C:\Programme\Autodesk\AutoCAD 2011\acad.exe" %1 -p "%USERNAME%" >NUL
E.
Zitat von @Meierjo:
Aber die Zeile
> regedit /s "%TweakPath%" >NUL
macht keinen Sinn, bei mir wird das Ergebnis leer (mit "") ausgeworfen
Wenn die Zeile das Profil des Benutzers in die Registry importieren soll, dann verwende
reg add
Warum sollte das keinen Sinn machen? Wenn %TweakPath% den korrekten Pfad darstellt und der Inhalt der Reg-Datei korrekt ist, dann sollte das funtionieren. Jedoch macht das ">NUL" wohl keinen Sinn, weil regedit keine Ausgabe in die Console schreibt. Und "/s" lässt es schon "silent" laufen.Aber die Zeile
> regedit /s "%TweakPath%" >NUL
macht keinen Sinn, bei mir wird das Ergebnis leer (mit "") ausgeworfen
Wenn die Zeile das Profil des Benutzers in die Registry importieren soll, dann verwende
reg add
Jedoch beachten: Wenn da was im HKLM eingetragen werden soll, dann benötigt der Benutzer dort Schreibrechte.
Test mal mit
echo "C:\Programme\Autodesk\AutoCAD 2011\acad.exe" %1 -p "%USERNAME%"
pause
E.
Hallo emeriks.
Wenn keine Parameter an die Batchdatei übergeben wurde, expandiert %1 zu einem leeren String. Das kann natürlich auch der Grund dafür sein, dass es nicht funktioniert...
Grüße
rubberman
Wenn keine Parameter an die Batchdatei übergeben wurde, expandiert %1 zu einem leeren String. Das kann natürlich auch der Grund dafür sein, dass es nicht funktioniert...
2. woher die "1" am Ende vor dem ">NUL" kommt?
Die Stream-Nummer wird bei eingeschaltetem Prompt angezeigt, auch wenn sie nicht im Code zu finden ist. 1 steht für stdout, 2 für stderr und 0 für stdin.Grüße
rubberman
Wenn keine Parameter an die Batchdatei übergeben wurde, expandiert %1 zu einem leeren String. Das kann natürlich auch
der Grund dafür sein, dass es nicht funktioniert...
Ja, schon klar. Bloß wenn der drin ist, dann soll da bestimmt ein Dokumentenpfad übergeben werden.der Grund dafür sein, dass es nicht funktioniert...
Die Stream-Nummer wird bei eingeschaltetem Prompt angezeigt, auch wenn sie nicht im Code zu finden ist. 1 steht für stdout, 2
für stderr und 0 für stdin.
Das ist mir noch nie aufgefallen. Danke!für stderr und 0 für stdin.
E.
Bloß wenn der drin ist, dann soll da bestimmt ein Dokumentenpfad übergeben werden.
Yep. Bei der Testausgabe war das aber nicht der Fall, oder wir kennen nicht den kompletten Code. Möglich wäre unter anderem auch, dass ein Argument an den Batchprozess übergeben wurde, die entsprechende Kommandozeile aber in einer Subroutine ausgeführt wird, wo dieses Out Of Scope wäre.Das ist mir noch nie aufgefallen.
Hehe, das ist zwar hier etwas off-topic, aber selbst die Reihenfolge wird bei der Ausgabe einer Umleitung ggf. neu sortiert.@prompt $
<nul >nul set /p "=test"
pause
set /p "=test" 0<nul 1>nul
pause
Drücken Sie eine beliebige Taste . . .
rubberman
Hallo
Due weisst ja, was im Reg File steht. Dann kannst du ja zuerst im entsprechenden Pfad in der Registry nachschauen, ob und was da drin steht.
Dann den Befehl:
SET TweakPath="%cd%\ACAD_Profil.reg"
reg import %TweakPath%
eingeben, hier muss folgende Meldung zurückgegeben werden: "Der Vorgang wurde erfolgreich ausgeführt".
Dann kannst du wieder in der Registry nachschauen, die Aenderungen sind eingegeben.
Einfacher geht s nun wirklich nicht mehr
Gruss
Due weisst ja, was im Reg File steht. Dann kannst du ja zuerst im entsprechenden Pfad in der Registry nachschauen, ob und was da drin steht.
Dann den Befehl:
SET TweakPath="%cd%\ACAD_Profil.reg"
reg import %TweakPath%
eingeben, hier muss folgende Meldung zurückgegeben werden: "Der Vorgang wurde erfolgreich ausgeführt".
Dann kannst du wieder in der Registry nachschauen, die Aenderungen sind eingegeben.
Einfacher geht s nun wirklich nicht mehr
Gruss