cinternet von C++-Programm aus starten
-
Hi,
Ich programmiere gerade ein Programm unter SuSE Linux 8.1 Prof.
Dieses Programm soll automatisch aus den konfigurierten Providern den günstigsten auswaehlen, und dann eine Verbindung zu ihm herstellen.
Nun habe ich jedoch das Problem, das ich die Verbindung übersystem("cinternet --start");
aufbaue. Da cinternet jedoch nach dem Aufbau der Verbindung aktiv bleibt, kann auch mein Programm nicht beendet werden.
Gibt es für dieses Problem eine Lösung(andere C++-Funktion oder so)?
-
system() aufrufe warten solange, bis der prozess, den sie starten, beendet. erst dann läuft dein programm weiter.
wenn du das anders machen willst, musst du plattformspezifische Funktionen verwenden.
Standard C++ hilft dir hier nicht mehr weiter
-
Habe da neulich was gepostet. Ist zwar eine andere Fragestellung gewesen, aber die Lösung ist quasi dieselbe. Nur das wait() am Ende muss natürlich weg.
pid von aufgerufenem prozess erfragen ?
-
welches Os benutzt du?
-
SuSE Linux 8.1 Prof.
-
Warum schickst du das Programm nicht in den Hintergrund mit & also "cinternet --start &" evtll. musst du es es noch mit hohup (No hang up) starten, damit es auch nach beenden deiner Anwendung aktiv bleibt...
-
hallo mebuh,
schau dir mal die funktionen fork() und exec() an...
Gruß Mathik
-
wo finde ich fork() und exec() (Headerdatei?) und wie benutze ich sie?
-
man execl man fork
Ist in der unistd.h drin. Selber suchen macht übrigens auch schlau
-
Original erstellt von Mebuh:
[QBund wie benutze ich sie?[/QB]Hallo? Hast du überhaupt auf den link von mir geklickt?
if(!fork()) execl(...);