Guten Abend, welche Funktion kann ich am besten benutzen, um ein externes Programm zu starten, wenn ich nicht auf die Beendigung warten möchte? Soweit ich weiß, macht der Aufruf mit system(); das. Ich möchte das Programm aber nur triggern, und sofort mit meinem Programm weitermachen, auch wenn das externe Programm noch nicht richtig gestartet ist.
Bärbel schrieb: > Guten Abend, > welche Funktion kann ich am besten benutzen, um ein externes Programm zu > starten, wenn ich nicht auf die Beendigung warten möchte? Soweit ich > weiß, macht der Aufruf mit system(); das. Ich möchte das Programm aber > nur triggern, und sofort mit meinem Programm weitermachen, auch wenn das > externe Programm noch nicht richtig gestartet ist. Vielleicht verrätst du uns noch die Sprache?
Du hast mehrere Möglichkeiten: Schau dir die spawn / exec Calls auf Unixartigen System an, die können bei Bedarf asynchron laufen, d.h. Sie kehren zum Aufrufer zurück während das externe programm läuft oder ersetzen den Aufrufer ganz. Unter Windows heist die Funktion CreateProcess und CreateProcessEx, die laufen immer asynchron. Wenn Du aber gar keine Wartezeit haben wilst, mußt du den Start des externen Programms in einen extra Thread auslagern. Gruß Hans
Danke für die Antworten! Die Sprache ist C und das System ist Win7.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.