Subject: Re: [boost] [gsoc] Boost.Process done
From: Wolfgang Fertsak (wolfgang.fertsak_at_[hidden])
Date: 2010-08-31 08:27:38


Hi, I ran into a problem when using the 2010 boost.process library
within a Windows GUI application with WinMain() instead of main()
without a console.

When I construct a context object the std[in|out|err]_behavior members
are initialized in the constructor with calls to
behavior::inherit::create(GetStdHandle(...)), which calls
DuplicateHandle(). DuplicateHandle() fails with error 6 (invalid handle)
since the application has no console and an exception is thrown.

So currently I don't see how I could use a context object from within a
Windows GUI application since its constructor will always throw this
exception.

What I want to do is start a child process and read its stdout as in the
example "Communicating with child processes".

Best regards,
Wolfgang