Suppressing console window when calling system()

S

stevie.greenslade

'Lo all.

I have a simple question I'd like help on. :]

How, if at all, would one go about suppressing the console window that
flashes up when you make at system() call in your C++ program? I'm
using Dev-C++ with GTK-- with all the 'GUI' options ticked. There is
nothing functionally wrong with the program save this flashing console
window.

The calls in question are to console apps that reside on the target OS,
the best example I could think of would be passing some info through
grep. (Why re-invent the wheel eh?)

I'd like to keep the solution as lightweight as possible, as I do plan
to make the program support both Linux and Windows, and it must be
compatible with Windows 2K. Although I am currently only compiling
under Windows, so I'll leave the Linux questions for later. :]
(So sadly http://msdn.microsoft.com/msdnmag/issues/04/02/CQA/ wouldn't
work it seems.)

Cheers in advance,

~ Steven
 
P

Pavel

....
How, if at all, would one go about suppressing the console window that
flashes up when you make at system() call in your C++ program? I'm
using Dev-C++ with GTK-- with all the 'GUI' options ticked. There is
nothing functionally wrong with the program save this flashing console
window. ....

I'd like to keep the solution as lightweight as possible, as I do plan
to make the program support both Linux and Windows, and it must be
compatible with Windows 2K. Although I am currently only compiling
...
CreateProcess(..) on Windows, fork() followed by exec() and some of the
wait()s on UNIX[es]. Unfortunately, the process spawning design is
different on these OSes; hence will most probably have to #ifdef some
parts of your implementation. It is worth to check first how Cygwin
handles the issue but I doubt it has a full-fledged fork()..

Hope this helps

-Pavel
 
S

stevie.greenslade

Pavel said:
...
How, if at all, would one go about suppressing the console window that
flashes up when you make at system() call in your C++ program? I'm
using Dev-C++ with GTK-- with all the 'GUI' options ticked. There is
nothing functionally wrong with the program save this flashing console
window. ...

I'd like to keep the solution as lightweight as possible, as I do plan
to make the program support both Linux and Windows, and it must be
compatible with Windows 2K. Although I am currently only compiling
..
CreateProcess(..) on Windows, fork() followed by exec() and some of the
wait()s on UNIX[es]. Unfortunately, the process spawning design is
different on these OSes; hence will most probably have to #ifdef some
parts of your implementation. It is worth to check first how Cygwin
handles the issue but I doubt it has a full-fledged fork()..

Hope this helps

-Pavel

Thanks for your reply. =]

It's taken some fiddling, but it's working (almost) perfect. A bit more
playing around and it should be done.

Cheers for sending me down the right Google path!

~ Steven
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,994
Messages
2,570,222
Members
46,810
Latest member
Kassie0918

Latest Threads

Top