[Catalyst] (OT) It’s not CMD.EXE’s fault (was: Easier catalyst installation)

Nilson Santos Figueiredo Junior acid06 at gmail.com
Tue Apr 4 23:46:28 CEST 2006


On 4/4/06, A. Pagaltzis <pagaltzis at gmx.de> wrote:
> The matter is more insidious than that. DOS and Win32 don't have
> a notion of argv; the command line is just a string, as opposed
> to a list of strings like it is on *nix. So on Win32, every
> program has to implement its own command line quoting parser to
> cope with spaces in parameters and even though there is a
> de-facto standard syntax, of course everyone has different bugs.

Well. Are you sure about this?

Then, when compiling some C code, the compiler needs to generates
hidden code to pass into my main() the splitted parameters? Because
using argc/argv[] works fine from C programs, without having to
manually do anything.

But when looking at the CreateProcess() API entry, there really is one
only string parameter which represents the command line. However,
inside this same description, it also states that the parameters will
be available through argc/argv[], as expected. So, clearly, the OS
seems to do some magic.

I really don't know who's to blame.

-Nilson Santos F. Jr.



More information about the Catalyst mailing list