Yes, you can do it.
The solution is actually very simple - our process can start a new helper
child-process, so the helper process will display whatever our process sends it. We can easily implement such a solution with pipes: for each new console
(that I'll call logger), we'll open a pipe, and execute a Console-Helper
application - the role of this application is very simple, it will print everything sent through the pipe. Check out this article Multiple consoles for a single application for details (contains the source code).
In the code, it implement a console class CConsoleLogger
, then you can create multiple console windows like:
CConsoleLogger another_console;
another_console.Create("This is the first console");
another_console.printf("WOW !!! COOLL !!! another console ???");
And you will get something like:
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…