Sign in to follow this  
Mantear

C++ Win32: spawning a second console window

Recommended Posts

Mantear    251
Greetings! I have a Win32 console application under VS2008 in C++. I have two threads running. One thread prints the status of the program, the other prints a series of menus and lets the user enter in menu selections. I would like to spawn a second console window so I can seperate the printing of the two threads. I don't know enough Win32 to even know what to google for, so a point in the right direction would be greatly appreciated. Thanks!

Share this post


Link to post
Share on other sites
SiCrane    11839
The short answer is that you can't: only a single console can be attached to any given process.

The long answer is that you can fake it by spawning one or more additional processes and feeding data to those processes. One way to do that is to use CreateProcess() to create a single additional process and redirect pipes to child process see this article for information on how to do that. Alternately, you can create two extra console processes and use AttachConsole() and FreeConsole() to connect to and detach from the child processes.

Share this post


Link to post
Share on other sites
Mantear    251
After searching around for a while looking at CreateProcess() and AttachConsole(), I don't think this is the direction I want to take. I'm guessing it's going to be a lot easier to create a simple dialog box with a text box from the consol app then try to get two consoles on the screen.

Share this post


Link to post
Share on other sites
LessBread    1415
Wouldn't it be easier to simply label the output from either thread with an identifier? Like this:

T1: ...output...
T1: ...output...
T1: ...output...
T2: ...output...
T1: ...output...
T2: ...output...
...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this