This is the mail archive of the
mailing list for the Cygwin project.
Re: Calling a cygwin binary from CreateProcess - problem with redirection
- From: "Ciarán Ó Duibhín" <ciaran at oduibhin dot freeserve dot co dot uk>
- To: <cygwin at cygwin dot com>
- Date: Thu, 4 Jan 2007 00:51:48 -0000
- Subject: Re: Calling a cygwin binary from CreateProcess - problem with redirection
- References: <000b01c72ba8$f99d8aa0$78d94c51@default> <Pine.GSO.firstname.lastname@example.org>
Igor Peshansky wrote:
> Ciarán Ó Duibhín wrote:
> > Hi,
> > I have no experience with cygwin, but I downloaded a Windows .exe which
> > is a unix program compiled for Windows with cygwin. Several cygwin
> > dll's are included.
> > I can run this program from the DOS command line.
> > An example command line is:
> > c:\progra~1\freeli~1.4\analyzer -f data\config\en.cfg < c:\split.txt >
> > new.txt
> > But I would like to launch it from another Windows application - a
> > graphic interface I am writing for it, in fact. However, when I supply
> > the above command line to the Windows CreateProcess function as the
> > lpCommandLine parameter, I get the error message
> > "CONFIG_OPTIONS: Error -11 parsing command line.
> > unknown option '' at position 4 in command line"
> > ie. the redirection symbol <. It doesn't matter whether or not there is
> > a space after the redirection symbol.
> > This is the same error message as produced when a commandline parameter
> > which is genuinely in error is supplied to the program, so it seems that
> > the combination of CreateProcess and cygwin is passing the redirection
> > parameter to the program in some mutated form, whereas it arrives
> > correctly from the command line.
> CreateProcess() is not a shell -- it will pass all arguments (including
> your redirection specifiers) to the program. This is not a
> Cygwin-specific problem -- you would have gotten the same errors with a
> pure Windows executable.
> You might want to read up on the arguments to CreateProcess on MSDN
> (especially the input/output handles in the STARTUPINFO structure). If
> you have further questions, a Windows-specific list might be a better
Thanks, Igor, that is correct of course.
A Google search for "CreateProcess" and "redirection" produced quite a lot
of information, and now my graphic interface is calling the (cygwin, as it
just happens) binary without any problems.
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html