27.2k Aufrufe
Gefragt in Windows 7 von ptxse Einsteiger_in (29 Punkte)
Ich möchte 3 Programme gleichzeitig mit einer Batchdatei schreiben,
die Batchdatei habe ich schon angelegt.
Dann habe ich die Pfade für alle 3 Programme untereinander reingeschrieben. Das erste wird dann auch gestartet. Und das wars.
Was muß ich dazwischen schreiben damit auch die anderen beiden Programme gestartet werden?

18 Antworten

0 Punkte
Beantwortet von
C:\Users\Computerbenutzer>"C:\Program Files (x86)\Mozilla\Firefox\firefox.exe" & C:\Windows\notepad.exe
0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
oder
START programm1
START programm2
START programm3


Eine Batch-Datei arbeitet immer nur jede Zeile einzeln ab - folglich wartet sie in deinem Fall auch, bis das erste Programm fertig ist.
0 Punkte
Beantwortet von ptxse Einsteiger_in (29 Punkte)
Hast du das mal selber ausprobiert. Das klappt nicht!
0 Punkte
Beantwortet von
also das hier als ping-1.cmd abgeschpeichert funktioniert bestens


start ping 192.168.155.132
start ping 192.168.155.130
start ping 192.168.155.131


das mit & bin mir nicht mehr so sicher
0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
Das & ist eine Befehlsverkettung - aber auch eine Kette wird nacheinander abgearbeitet. Die START-Anweisung hingegen (tipp mal START /? oder HELP START) ist CreateProcess-orientiert: sie startet das Programm und wartet nur dann auf dessen Ende, wenn man es ihr auch mit /WAIT sagt.

Das alles hat den Grund, weil BATCH an sich ja aus DOS-Zeiten kommt und damals eben kein Multitasking möglich war und somit auch nicht mehrere Prozesse "gleichzeitig" gestartet werden (besser formuliert: gleichzeitig laufen) können. Schon damals gab es die Befehlsverkettung &, die aber auch ihrerseits (wie heute) einzeln abgearbeitet wird.

Deshalb "funktioniert" (besser formuliert: verhält sich deinen Wünschen) das & in diesem Fall nicht und stattdessen ist START die Lösung.
0 Punkte
Beantwortet von ptxse Einsteiger_in (29 Punkte)
Geht aber doch alles nicht was ihr mir bislang vorgeschlagen habt!

Start ....
Start ....
Start ...

Kann doch nicht gehen weil das erste Programm ja nicht beendet wird!

Keiner mehr eine Idee?
0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
Das hast du nicht verstanden UND nicht ausprobiert. START startet einen Prozess und kehrt dann zur Shell zurück. Folglich wird auch der nächste START-Befehl abgearbeitet - völlig unabhängig davon, ob das vorige Programm noch läuft oder nicht.
0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
...aber um es noch unmissverständlicher zu zeigen: erstell eine starttest.bat mit folgendem Inhalt und ruf sie auf:
start notepad
start notepad
start notepad
0 Punkte
Beantwortet von ptxse Einsteiger_in (29 Punkte)
Das haut hin. Es geht 3 mal notepad auf. Hier mal der Inhalt meiner Batch-Datei:

Start C:\Programme\PeerGuardian2\pg2.exe
Start C:\Programme\Vidalia Bundle\Vidalia\vidalia.exe
Start Z:\Programme\JDownloader\JDownloader.exe


Es geht nur das erste Programm auf.
0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
...und du kriegst nicht zufällig die Fehlermeldung "C:\Programme\Vidalia konnte nicht gefunden werden..."?
...