On Sat, 06 Apr 2013 11:38:14 -0400, Vladimir Panteleev <vladi...@thecybershadow.net> wrote:

Um, that's exactly how it works. There is a value in the PE header which determines this. The corresponding linker flag is /SUBSYSTEM:WINDOWS for a GUI program or /SUBSYSTEM:CONSOLE for a console program.

The flag specifies that you want to run a console application, but want to suppress its console window.

Shit, I didn't remember this correctly at all!

Yes, I remember now. It was for GUI applications that wanted to run a console application. Because there was no console window for the parent process, windows creates one.

Like an application that wanted to run a script or something. I ran into this a million years ago when I was using Tango, and I had a GUI agent that ran programs on behalf of a remote process, and annoying console windows would pop up if the application was a script, seemingly at random.

Sorry I misrepresented!

In light of this, there really is no good reason it was called gui! I probably was this confused when I picked that name to begin with ;)

-Steve

Reply via email to