Wie schreibe ich aus einem MFC-Programm in stdout?

8

MFC-Programme können normalerweise nicht in stdout schreiben. MFC macht etwas seltsames mit den stdout / stdin Pipes während des Starts und alles was du schreibst (zum Beispiel ein printf ("hallo");) geht einfach zu / dev / null.

Kann jemand erfolgreich aus einem MFC-Programm in stdout schreiben?

Danke fürs Lesen.

    
Stephen Kellett 23.02.2011, 17:28
quelle

5 Antworten

8

Verwenden Sie AllocConsole , um eine Konsole zum Schreiben zu erstellen . Im folgenden Artikel wird erläutert, wie Sie es zum Drucken in der Konsole verwenden können.

Erstellen einer Konsole für die Debugausgabe Ihrer MFC-App

Vergessen Sie nicht FreeConsole , wenn Sie fertig sind es.

    
Nawaz 23.02.2011, 17:33
quelle
7

Hier ist ein One-Liner, den ich vor einiger Zeit online gefunden habe und der Stdout an eine Konsole in MFC anfügt. Dadurch können printf und cout in das Konsolenfenster des aktuellen Prozesses geschrieben werden. Ich habe nie darüber nachgedacht, wie es funktioniert. Wenn Sie also eine Cerr- oder Cin-Version benötigen, sind Sie auf sich allein gestellt.

%Vor%     
John K 15.08.2011 17:18
quelle
7

Dies wird an das Fenster der aufrufenden Konsole angehängt, falls eines vorhanden ist. GotConsoleAttach wird FALSE sein, wenn die Anwendung nicht von einer Konsole aus aufgerufen wurde.

%Vor%     
noelicus 08.10.2012 13:17
quelle
7

Wenn Sie nur nach dem Debug-Fenster suchen, können Sie TRACE verwenden.

%Vor%

Ich mache das, wenn ich schnell etwas teste und keine Dialogboxen wie MessageBox ("text") verwenden möchte.

    
Jason Holt 24.09.2013 20:03
quelle
0

Nachdem ich einen ganzen Tag damit verbracht habe, mein MFC-Programm mit printf () und cout zu drucken, fand ich endlich eine Lösung und entschloss mich, sie hier zu veröffentlichen, um zu helfen, wer bei MFC drucken möchte ...

%Vor%

Rufen Sie einfach die obige Funktion an einer Stelle Ihres Programms auf, und danach können Sie printf () und cout ...

verwenden %Vor%     
Joao Louzada 11.08.2017 19:08
quelle

Tags und Links