kostenloser Webspace werbefrei: lima-city


CMD-Batch Programme starten

lima-cityForumProgrammiersprachenSonstige Programmiersprachen

  1. Autor dieses Themas

    w******e

    Hi.

    Wie kann ich es mache, dass wenn die Batch-datei ausgeführt wird. die datei 1.EXE läuft. wenn die 1.EXE fertig ist, soll de 2.EXE gestartet werden usw. wie soll ihc das machen?
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. h******g

    Also ich nehme mal an, dass "fertig" heißen soll, dass das Programm beendet wurde.

    Naja, dann musst du eben das erste Programm starten und nachher in einer Schleife abfragen, ob das Programm noch läuft. Wenn nicht startest du das zweite Programm:
    @echo off 
    
    chdir="PFAD"
    
    1.exe
    
    set Programm=1
    
    :programm1
    
    tasklist |find /i "%Programm%" >nul 
    if %errorlevel% == 0 ( 
    goto programm2
    ) else ( 
    goto programm1
    )
    
    :programm2
    
    2.exe


    Solltest du aber nur so machen, wenn das erste Programm nur kurz ausgeführt wird, da das ganze praktisch eine Endlosschleife ist.
    Ansonsten könntest du noch mit timout arbeiten.

    edit:
    Mir ist gerade eingefallen, dass das ganze eigentlich auch einfach so gehen müsste:
    @echo off 
    
    chdir="PFAD"
    
    1.exe
    
    2.exe


    Beitrag zuletzt geändert: 15.12.2009 17:42:23 von hm4-blog
  4. b********3

    hm4-blog schrieb:

    edit:
    Mir ist gerade eingefallen, dass das ganze eigentlich auch einfach so gehen müsste:
    @echo off 
    
    chdir="PFAD"
    
    1.exe
    
    2.exe


    Nicht ganz, so läuft alles (fast) gleichzeitig

    es geht aber mit
    @echo off
    
    chdir="Pfad"
    
    start /wait 1
    
    start /wait 2


    Das .exe kann entfallen (muss aber nicht)
  5. BATCH = Stapelverarbeitung.

    Im Grunde ist es richtig:
    command1
    command2

    "Gleichzeitig" wird es nur ausgeführt, wenn diese Programme in einem extra Thread gestartet werden. Beispielsweise würde nacheinander ausgeführt werden:
    ping google.de
    tracert google.de

    Das "@echo off" ist dabei lediglich der Ästhetik wegen "notwendig". Der Programmpfad kann auch vor dem Programm direkt angegeben werden, so zb.
    c:\windows\system32\ping.exe google.de
    c:\windows\calc.exe

    Bei Programmen, die in einem extra Thread geöffnet werden (wie beispielsweise viele Windows-Programme) veranlasst der parameter "/wait 1" das abwarten, bis das Programm geschlossen ist.
    c:\windows\system32\calc.exe /wait 1
    c:\windows\notepad.exe

    Um mal die bisher aufgeführten Varianten auszuführen ;)
  6. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!