471,863 Members | 894 Online
Bytes | Software Development & Data Engineering Community
Post +

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 471,863 software developers and data experts.

Suppressing console window when calling system()

'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

Sep 13 '06 #1
2 2278
....
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
Sep 13 '06 #2

Pavel wrote:
...
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

Sep 13 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

17 posts views Thread by MumboJumbo | last post: by
11 posts views Thread by Chris | last post: by
reply views Thread by Mythran | last post: by
4 posts views Thread by pdmountaineer | last post: by
10 posts views Thread by Stephany Young | last post: by
NeoPa
reply views Thread by NeoPa | last post: by
reply views Thread by YellowAndGreen | last post: by
aboka
reply views Thread by aboka | last post: by

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.