Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - Problem mit ShellExecute / auf Ende der Ausführung prüfen


hitmiccs - Do 06.10.05 09:34
Titel: Problem mit ShellExecute / auf Ende der Ausführung prüfen
Hallo.

Hab hier ein kleines Problem mit ShellExecute. Ich führe damit ein externes Konsolen-Zip aus (7zip) und das 3 mal hinterneinander. Das Prob taucht auf, weil die letzte Ausführung erst starten darf, wenn die ersten beiden fertig sind, sprich die .zip's aus den ersten beiden Ausführungen schon existieren...

Kann man eine ShellExecute-Ausführung auf ihr eigenes Ende hin prüfen?


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
 begin
  ShellExecute(Application.Handle,'open',pchar('7z.exe'),pchar('a -tzip send/RMF_Messungen_'+schicht_dat.Text+'.zip '+get_folder_rmf+'\*.STM'),nil,SW_SHOW);
  ShellExecute(Application.Handle,'open',pchar('7z.exe'),pchar('a -tzip send/DQM_Messungen_'+schicht_dat.Text+'.zip '+get_folder+'\*.ps'),nil,SW_SHOW);

  ShellExecute(Application.Handle,'open',pchar('7z.exe'),pchar('a -tzip send/DQM+RMF_Messungen_'+schicht_dat.Text+'.zip '+'/send'+'\*.zip'),nil,SW_SHOW);
 end;


Zuerst werden 2 Zip's erstellt und als 3. sollen diese beiden dann wieder zusammen gepackt werden, eigentlich nur damit sie nicht einzeln "rumliegen". Wenn ich es so laufen lasse, fängt er an zu zippen, aber alles durcheinander, nach dem Motto: wer als erstes Fertig ist...deswegen ist das letzte Zipfile immer leer, da alle Zips erst "erscheinen" wenn alle ShellExecutes ausgeführt sind.

Wie kann ich das anstellen?
Grüße
hitmiccs


Heiko - Do 06.10.05 10:21

Siehe gleiches Thema hier [http://www.delphi-forum.de/viewtopic.php?t=49450&start=0&postdays=0&postorder=asc&highlight=].


hitmiccs - Do 06.10.05 11:27

Ok, sorry, habs schon gefunden...
Danke trotzdem.