Gast
2010-02-18, 13:37:36
Hallo zusammen !
if (...)
{
ShellExecute(0, "open", "cmd.exe", ...);
...
}
if (...)
{
ShellExecute(0, "open", "cmd.exe", ...);
}
In "..." steht die Pfadangabe zu einem externen Programm + Paramter, durch das ein Wert berechnet wird, der anschließend in einem File gespeichert wird.
Das Programm soll zwei Werte berechnen, ich brauche dazu leider die cmd.exe ! Das Problem ist nun, dass die Berechnung des ersten Wertes etwas Zeit benötigt, die zweite Berechnung aber auf das Ergebnis des ersten Wertes angewiesen ist. Die zweite Berechnung wird allerdings sofort aufgerufen, während die erste noch zu Gange ist. Das Ergebnis ist dann, dass die Ausgabefiles leer sind oder garnicht erst erstellt werden. Debugge ich das Programm und steppe schrittweise durch, werden natürlich alle Files korrekt erstellt.
Kann ich das im Code irgendwie einbauen, dass der erste Aufruf komplett abgearbeitet und dann erst der zweite Aufruf gestartet wird ? Beim Aufruf externer Programme ist das eher schwer, oder ?
if (...)
{
ShellExecute(0, "open", "cmd.exe", ...);
...
}
if (...)
{
ShellExecute(0, "open", "cmd.exe", ...);
}
In "..." steht die Pfadangabe zu einem externen Programm + Paramter, durch das ein Wert berechnet wird, der anschließend in einem File gespeichert wird.
Das Programm soll zwei Werte berechnen, ich brauche dazu leider die cmd.exe ! Das Problem ist nun, dass die Berechnung des ersten Wertes etwas Zeit benötigt, die zweite Berechnung aber auf das Ergebnis des ersten Wertes angewiesen ist. Die zweite Berechnung wird allerdings sofort aufgerufen, während die erste noch zu Gange ist. Das Ergebnis ist dann, dass die Ausgabefiles leer sind oder garnicht erst erstellt werden. Debugge ich das Programm und steppe schrittweise durch, werden natürlich alle Files korrekt erstellt.
Kann ich das im Code irgendwie einbauen, dass der erste Aufruf komplett abgearbeitet und dann erst der zweite Aufruf gestartet wird ? Beim Aufruf externer Programme ist das eher schwer, oder ?