Dear,
I'm lost.
I menage to redirect successfully the standard output of my c++ code to the QTextEdit belonging to my GUI Application, implementing the class
and it works fine for the print commands inside my code.class QDebugStream : public std::basic_streambuf<char>
The problem is that my program call also external tools that have their own print messages that are not redirecting to the GUI but still printed on console.
I am thinking that as I did I am just redirecting the calls
and not in general all the messages to std output.std::cout<<
For example I have a Fortran library that has a C++ interface I'm including in my code. In the fortran code there are the standard printing messages and those message are printed on console and not on my widget. How shall I redirect those?
I hope a make clear the problem.
Do you have any idea on how to solve this problem?
Thanks in advance once again for your help,
Regards
Annalisa


Reply With Quote

Maybe there is some native API that will help you intercept STDOUT from those libraries but the chances are slim. On a POSIX system you could probably use dup2() and pipe2() to create a pipe from stdout that you could read but I am just guessing.
Bookmarks