Comroader Geschrieben 16. September 2002 Geschrieben 16. September 2002 Hallo, Ich hab mal wieder ein Problem bei dem ich fast verzweifle. Ich starte mit ShellExecute ein *.cmd-File danach soll mein Programm eine Pause machen, solange die Anweisungen im cmd-File ausgeführt werden, erst wenn der Prozess beendet ist, sollen die Anweisungen in meinem c-File ausgeführt werden !!! Vielleicht hatte ja schon jemand von euch ein ähnliches Problem. Schon im voraus vielen Dank !!!! Zitieren
Klotzkopp Geschrieben 17. September 2002 Geschrieben 17. September 2002 Es wäre vermutlich einfacher, wenn Du nicht ShellExecute, sondern CreateProcess verwenden würdest. Die PROCESS_INFORMATION-Struktur, deren Adresse Du als letzten Parameter übergibst, enthält u.a. ein HANDLE, auf das Du mit WaitForSingleObject warten kannst, bis der Prozess beendet ist: STARTUPINFO sinfo; PROCESS_INFORMATION pinfo; memset( &sinfo, 0, sizeof(sinfo) ); sinfo.cb = sizeof(sinfo); memset( &pinfo, 0, sizeof(pinfo) ); // Taschenrechner starten if(!CreateProcess("c:\\windows\\system32\\calc.exe", NULL, NULL, NULL, FALSE, NULL, NULL, NULL, &sinfo, &pinfo)) { // Fehler beim Starten des Prozesses // ... } // Warten, bis der Taschenrechner geschlossen wird WaitForSingleObject( pinfo.hProcess, INFINITE );[/CODE] Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.