GELÖST Batch-Programmierung: Prozess starten+warten

Diskutiere Batch-Programmierung: Prozess starten+warten im Programmierung Forum im Bereich Software Forum; Ein Prozess soll gestartet werden, unmittelbar danach soll darauf gewartet werden, dass ein bereits bestehender, aebr anderer Prozess durch...
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
Ein Prozess soll gestartet werden, unmittelbar danach soll darauf gewartet werden, dass ein bereits bestehender, aebr anderer Prozess durch denBenutzer beendet wird, dann soll weiter gemacht werden.

Pseudo-:
Code:
1. program.exe starten
2. warte solange other.exe ausgeführt wird
3.
Jetzt wäre meine Frage, wie dies zu realisieren ist. Hatte an eine batch-Datei gedacht, weil hier die Programmierung wohl sehr einfach ist.
 
Zuletzt bearbeitet:
XP-Fan

XP-Fan

Mitglied seit
29.11.2008
Beiträge
1.541
Hi,

mittels dem Aufruf start /wait programm.exe sollte es funktionieren.
 
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
"start /wait programm.exe" startet eine neue Anwendung.
Es soll auf die Beendigung einer anderen Anwendung gewartet werden, die nicht durch start gestartet wurde.
 
Zuletzt bearbeitet:
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
Also auf das Ende eine Prozesses warten.

Wenn das mit batch nicht geht, mit welcher win.api ginge es dann. Diesen komplizierten Weg, ein eigenes C-Programm zu schreiben, wollte ich eigentlich nicht machen, komme ich aber wohl nicht umher.

batch sollte einfach verschiedene Anwendungen starten und nachdem alle Beendet wurden, einen weiteren Befehl.
 
A

AlienJoker

Gast
du kannst programm1 starten und bei dessen ende das nächste anwerfen, aber einmal gestartet, kann ein Programm nicht mehr pausiert werden.
 
automatthias

automatthias

vernunftgeplagt
Mitglied seit
21.04.2006
Beiträge
8.053
Wenn das mit batch nicht geht, mit welcher win.api ginge es dann. Diesen komplizierten Weg, ein eigenes C-Programm zu schreiben, wollte ich eigentlich nicht machen, komme ich aber wohl nicht umher.
Versuche es doch mal mit AutoIt3. Das ist eine leichte Skriptsprache mit mächtigen Befehlen. Für Deine Zwecke gibt es da z.B. WinWaitClose
"Unterbricht die Ausführung des Skripts bis das angegebene Fenster nicht mehr existiert." oder ProcessWaitClose.
Die Skripte lassen sich auch zu einer .exe kompilieren.

Mit einer "normalen" Batchdatei könntest Du eine Schleife erstellen, in der Du z.B. mit den Kommandos tasklist und find prüfst, ob ein Prozess noch läuft. Halte ich aber für umständlich.

Übrigens: :welcome
 
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
Wieso denn jetzt pausieren. XP-Fan hat mich auch schon nicht richtig verstanden. Es soll nur ein Prozess "beobachtet" werden.

Anderer Vorschlag: Kann man unter
Start/Alle Programme/Zubehör/Systemprogramme/Aufgabenplaner
bzw.
%windir%\system32\taskschd.msc
einen Task hinzufügen, der dann ausgeführt wird, wenn eine Anwendung beendet (oder gestartet) wird?

Wie gehts
 
automatthias

automatthias

vernunftgeplagt
Mitglied seit
21.04.2006
Beiträge
8.053
Wieso denn jetzt pausieren. XP-Fan hat mich auch schon nicht richtig verstanden. Es soll nur ein Prozess "beobachtet" werden.
Dann könntest Du die AutoIt3-Funktion ProcessExists in einer Schleife im x-Sekundentakt laufen lassen.

Der Taskscheduler ist wahrscheinlich keine Lösung.
 
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
automatthias

automatthias

vernunftgeplagt
Mitglied seit
21.04.2006
Beiträge
8.053
alos könnte ich dann zwei oder drei Prozesse starten und dann mit ProcessWaitClose darauf warten, dass ein bestimmter Prozess beendet wurde und dann weiter machen? Wär' es wirklich anders nicht machbar, würde ich AutoIt3 installieren und es testen.
Mit Bordmitteln höchstens, wie gesagt, mit den Befehlen tasklist und find....
 
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
AutoIt – Self Extracting Archive (for those who don’t like/want an installer)

(includes x86 and x64 components and Aut2Exe and AutoItX)
das freut mich:) also werde ich gleich mal ein scrit einstellen.
 
automatthias

automatthias

vernunftgeplagt
Mitglied seit
21.04.2006
Beiträge
8.053
Also, AutoIt3 ist echt super. Ich habe zwar früher viele systemnahe Programme mit C/C++ erstellt, aber einiges davon hätte man auch mit einem AutoIt3-Skript einfacher haben können. Wie gesagt, einfache Syntax, mächtige Befehle.

Die deutsche Hilfedatei kann man separat runterladen.
 
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
Ich hab mich in der englischen etwas umgesehen (Language Reference, Keyword/Statement Reference + Function Reference) folgendes:

Code:
Example


;waits until no instance of notepad.exe exists
ProcessWaitClose("notepad.exe")

; This will wait until this particular instance of notepad has exited
$PID = Run("notepad.exe")
ProcessWaitClose($PID)
:sing
 
F

foreah

Threadstarter
Mitglied seit
12.05.2011
Beiträge
20
Also das ist genial. Konnte jetzt mit 4 Zeilen alles ha'm, was benötigt ist.

Starten geht entweder mit der Funktion Run/RunWait oder bei "Konsolen-Befehlen" mit:
To run DOS (console) commands, try Run(@ComSpec & " /c " & 'commandName', "", @SW_HIDE) ; don't forget " " before "/c"
Mit C wäre das nicht so schnell fertig
 
Thema:

Batch-Programmierung: Prozess starten+warten

Sucheingaben

batch Applikation in schleife starten

,

mit batch programm öffnen und unsichtbar warten bis es geschlossen wird

,

batch datei warten

,
batchdatei comspec warten
, batch prozess starten, batch datei programm ergebnis abwarten, windows auf prozessende warten, programm per bat starten und auf ende warten, batch wait programm ende, batch warten bis programm geschlossen ist, windows batch start warten, batch exe starten und warten

Batch-Programmierung: Prozess starten+warten - Ähnliche Themen

  • Ich finde meinen Fehler

    Ich finde meinen Fehler: Bin grade bei der Entschlüsselung und immer kommt genau das gleiche bei Raus habt ihr nen Plan wo der Fehler ist FOR /F "skip=%skip%" %%A IN...
  • Batch Programmierung

    Batch Programmierung: Guten Nabend miteinander. Also ich darf für meinen Chef ein kleines Programm schreiben welches Die Namen aus einer Textdatei ausliest und danach...
  • Batch Programmierung - Befehl in einer Variablen speichern

    Batch Programmierung - Befehl in einer Variablen speichern: Hallo zusammen, ich versuche gerade verzweifelt eine Batch zu schreiben, welche mir die Ausgabe eines Befehls in einer Variablen speichern soll...
  • GELÖST Schulaufgabe Batch-Programmierung HILFE!!!

    GELÖST Schulaufgabe Batch-Programmierung HILFE!!!: Hallo! Ich habe in der Schule die folgende Aufgaben bekommen: Aufgabe 1: Erstellen Sie eine BATCH-Datei, die folgendes leistet: Es ist ein...
  • Hlfe bei Batch Programmierung

    Hlfe bei Batch Programmierung: Hey Ich muss unter Windows Server 2000 eine 2 kleine BatchDateien schreiben. Könnt Ihr mir dazu vielleicht helfen? Mit der ersten BatchDatei...
  • Ähnliche Themen

    • Ich finde meinen Fehler

      Ich finde meinen Fehler: Bin grade bei der Entschlüsselung und immer kommt genau das gleiche bei Raus habt ihr nen Plan wo der Fehler ist FOR /F "skip=%skip%" %%A IN...
    • Batch Programmierung

      Batch Programmierung: Guten Nabend miteinander. Also ich darf für meinen Chef ein kleines Programm schreiben welches Die Namen aus einer Textdatei ausliest und danach...
    • Batch Programmierung - Befehl in einer Variablen speichern

      Batch Programmierung - Befehl in einer Variablen speichern: Hallo zusammen, ich versuche gerade verzweifelt eine Batch zu schreiben, welche mir die Ausgabe eines Befehls in einer Variablen speichern soll...
    • GELÖST Schulaufgabe Batch-Programmierung HILFE!!!

      GELÖST Schulaufgabe Batch-Programmierung HILFE!!!: Hallo! Ich habe in der Schule die folgende Aufgaben bekommen: Aufgabe 1: Erstellen Sie eine BATCH-Datei, die folgendes leistet: Es ist ein...
    • Hlfe bei Batch Programmierung

      Hlfe bei Batch Programmierung: Hey Ich muss unter Windows Server 2000 eine 2 kleine BatchDateien schreiben. Könnt Ihr mir dazu vielleicht helfen? Mit der ersten BatchDatei...
    Oben