Konsolenausgabe eines externen Programmes umlenken
-
Hallo,
da ich die Suchfunktion vergeblich bemüht habe, werde ich nun meine Frage mal hier stellen, in der Hoffnung, es lässt sich mit WinAPI realisieren. (
ansonsten bitte verschieben.)Eigentlich sagt ja der Titel schon fast alles. Mein Problem ist, aus einem externen Programm, welches ich nicht verändern kann, die Konsolenausgabe "zu extrahieren" und in meinem Programm anzuzeigen. Es handelt sich dabei um ein normales Programm, welches in der Win32-Konsole läuft. Mir ist schon der Gedanke gekommen, das Programm so
programm.exe > datei.txtaufzurufen und dann ungefähr so[cpp]std::ifstream in("datei.txt");
//...
while (!in.good()) Sleep(1);[/cpp] immer zu warten, bis etwas neues kommt. Ich denke aber, das wäre zu aufwendig und vor allem zu ressourcenintensiv.Nun meine Frage: Wie kann ich dieses Problem (möglichst einfach) implementieren?
Danke schon mal im Voraus.
-
Siehe: How to spawn console processes with redirected standard handles
http://support.microsoft.com/kb/190351/en-us