Batch läuft nicht, was mache ich falsch?

Hallo,

möchte 2 Progs gleichzeitig starten.

habe mir eine Batch geschrieben

cd \
start „programm1“ „pfad zu programm1.exe“
start „programm2“ „pfad zu programm2.exe“

das klappt aber nicht. Kommt die Fehlermeldung programm konnte nicht gefunden werden

habe über cmd dann einzeln durchgetestet, ich bekomme den Ordner nicht getauscht:

C:\Users\Koerni>cd d:
D:\ hier wird d: richtig angezeigt

C:\Users\Koerni> aber er springt sofort hierher zurück, so das die nächste Eingabe wieder auf C:… landet

was kann ich dagegen tun?

Danke, Gruß STeffen

Die Syntax ist einfach falsch:

start „c:\programme\test\test.exe“

Und das aktuelle Laufwerk wechselt man ohne „cd“:

d:
cd test
start test.exe

führt dann d:\test\test.exe aus.

Hallo,

möchte 2 Progs gleichzeitig starten.

habe mir eine Batch geschrieben

Ein Batch arbeitet, wie der Name schon sagt, die Befehl stapelweise nacheinander ab. Das ist also schon Mal der falsche Ansatz.

Und: Da sind Fehler ohne Ende enthalten

cd \

diesen Befehl gibt es nicht. Wenn überhaupt "cd " um ins Hauptverzeichnis zu wechseln, aber wozu?

start „programm1“ „pfad zu programm1.exe“
start „programm2“ „pfad zu programm2.exe“

das klappt aber nicht. Kommt die Fehlermeldung programm konnte
nicht gefunden werden

Logisch. der Aufruf muss lauten „Verzeichnisname\Programmname“

habe über cmd dann einzeln durchgetestet, ich bekomme den
Ordner nicht getauscht:
C:\Users\Koerni>cd d:

CD steht für „Change Directory“ und kann daher nicht das aktuelle Laufwerk wechseln.

D:\ hier wird d: richtig angezeigt

C:\Users\Koerni> aber er springt sofort hierher
zurück, so das die nächste Eingabe wieder auf C:… landet

???

was kann ich dagegen tun?

Du solltest Dich zunächst mit den grundlegende Funktionen vertraut machen. Abgesehen davon, dass nicht so recht klar ist, was da genau geplant ist, ist die Batchdatei eigentlich ein einziger großer Fehler.

Gruß

S.J.

Hallo.

Die Syntax ist einfach falsch:

start „c:\programme\test\test.exe“

Das stimmt jedenfalls nicht unter Windows XP. Dort gibt alles in den ersten „“ nach start den Namen des Programmfensters an, der vergeben werden soll. Unter Windows 7 kann ich gerade nicht testen, aber ich gehe mal davon aus, dass das dort genauso ist.
Also entweder

start c:\programme\test\test.exe

was natürlich nur ohne Leerzeichen im Pfad klappt, oder

start "irgendwas" "c:\programme\test\test.exe"

Sebastian.

Hallo,
Danke euch allen, jetzt hab ich es hinbekommen.
War halt lange her, das ich mich mit den DOS-Befehlen beschäftigt habe.
Gruß Steffen

„Ein Batch arbeitet, wie der Name schon sagt, die Befehl stapelweise nacheinander ab. Das ist also schon Mal der falsche Ansatz.“

Nö, das klappt schon so, die Programme werden zwar nacheinander gestartet, laufen dann aber parallel. Will man das nicht müsste man „start /wait“ verwenden.

Doch, das klappt auch bei XP. Ich verwende hier noch XP und habe eine entsprechende Batch im Autostart-Ordner liegen, hier ein Auszug:

start /wait /min C:\Programme\clearprog\ClearProg.exe /ALL
start /min C:\Programme\Thunderbird\thunderbird.exe
start /min C:\Programme\Firefox\firefox.exe

Hallo.

Offenbar verwendest du den Pfad ohne „“, daher klappt das. Nichts anderes habe ich geschrieben. Wenn man den Pfad in „“ einfasst, muss zumindest bei XP vorher ein weiterer Parameter in „“ auftauchen, da der erste Parameter in „“ als Fenstertitel interpretiert wird.

start /min "c:\Program Files\Firefox\firefox.exe"
start /min "Firefox" "c:\Program Files\Firefox\firefox.exe"

Von diesen beiden Befehlen würde nur der 2. funktionieren.

Sebastian.

Ach stimmt, da war ja was, schließt man den Pfad in Anführungszeichen ein wird das als optionaler Titel-Parameter ausgewertet. Also entweder einfach

start „“ „c:\hallo\hallo.exe“

oder die alten, nur 8 Zeichen langen Pfade, aber keine Anführungszeichen, verwenden:

start c:\progra~1\System32\calc.exe

Ich finde letzteres noch ein bißchen weniger fehleranfällig. :smile:

Hi.

Ach stimmt, da war ja was, schließt man den Pfad in
Anführungszeichen ein wird das als optionaler Titel-Parameter
ausgewertet.

Ganz genau. Nach deiner mittlerweile gelöschten anderen Anwort dachte ich schon, ich wäre nicht mehr in der Lage, mich so auszudrücken, dass du verstehst was ich meine. Hat aber offenbar doch noch geklappt. :smile:

start c:\progra~1\System32\calc.exe

Ich finde letzteres noch ein bißchen weniger fehleranfällig.

Das am wenigsten fehleranfällige wäre, auf Pfade mit Leerzeichen zu verzichten, dann braucht es keine Anführungszeichen. Wenn man dann allerdings ein englischsprachiges Windows hat und der Programmordner „C:\Program Files“ heißt, dann geht das leider nicht so einfach.

Sebastian.

Ja, sorry wegen der ersten Antwort, du hast wie gesagt vollkommen recht. Ich hatte nicht direkt erfasst, worauf du hinaus wolltest. Aber dann kam die Erinnerung doch plötzlich wieder. :smile: