tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
1086
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    jackie05 jackie05 ist offline Mitglied Brokat
    Registriert seit
    Feb 2005
    Beiträge
    293
    Hallo,
    wie kann ich einen bestimmten Ordnerinhalt erst Verschieben lassen, wenn ein bestimmtest Programm beendet ist?
    Also er soll erst Prüfen ob z.B. ProgrammA geöffnet ist, wenn ja, dann soll gewartet werden, bis ProgrammA beendet ist und dann erst den Ordnerinhalt verschieben lassen.

    Hier ist mal mein versuch:
    Code :
    1
    2
    3
    4
    
    @echo off 
    start /wait "E:\test.exe"
    move /Y "E:\test\"*.* "E:\test2\" 
    pause

    Verschieben funktioniert, es soll aber erst verschoben werden, wenn das jeweilige Programm nicht geöffnet ist.
    Also es soll darauf gewartet werden, wenn das Programm geöffnet ist, bis es geschlossen wurde und dann erst verschieben.
    Wie mache ich das jetzt ambesten?

    Ich bedanke mich schonmal im Voraus.

    MfG
    Geändert von jackie05 (12.11.11 um 12:28 Uhr)
     

  2. #2
    Kyrodust Kyrodust ist offline Mitglied Gold
    Registriert seit
    Apr 2003
    Ort
    Graz (Steiermark)
    Beiträge
    178
    Hi!

    Dein Ansatz ist gar nicht mal so schlecht.

    Du hast aber einen kleinen Fehler gemacht: Du startest das Programm "test.exe" mit dem "start"-Befehl.

    Versuch einfach mal das Programm ohne start aufzurufen (einfach den Pfad zur exe angeben), dann sollte die Batchdatei erst weiterlaufen sobald das Programm durchgelaufen ist (bzw. du es beendest.

    Wenn du allerdings "start" verwendest wird das Programm/der Prozess in einer neuen Instanz gestartet und die Batch läuft weiter.

    Versuch das einfach mal...

    lg Michael
    Geändert von Kyrodust (10.01.12 um 21:29 Uhr) Grund: Rechtschreibfehler
     

  3. #3
    cyborg-pc cyborg-pc ist offline Mitglied Bronze
    Registriert seit
    Sep 2003
    Beiträge
    39
    Du kannst es auch mit einer einfachen Schleife tun:
    Code :
    1
    2
    3
    
    :start
    tasklist | findstr /i "test.exe"
    if %errorlevel%==0 goto start
    Wird die exe in der aktuellen Task-Liste nicht gefunden, fängt die Abfrage von vorne an. Andernfalls geht es weiter.

    Grüße
     

Ähnliche Themen

  1. Umschreiben eines Programms von C auf C++
    Von _Grubi im Forum C/C++
    Antworten: 6
    Letzter Beitrag: 26.10.09, 08:31
  2. Sterbeaktion eines Programms
    Von Unicate im Forum C/C++
    Antworten: 4
    Letzter Beitrag: 16.05.06, 21:52
  3. Programm nach Beendigung neu starten
    Von JoachimSC im Forum Microsoft Windows
    Antworten: 3
    Letzter Beitrag: 28.09.05, 23:25
  4. Testen eines RMI + DB Programms
    Von gerritka im Forum Java
    Antworten: 0
    Letzter Beitrag: 30.06.05, 16:16
  5. PC nach Beendigung des Progs herunterfahren
    Von totherock im Forum .NET Archiv
    Antworten: 2
    Letzter Beitrag: 03.06.04, 14:44