Subject: RE: cygwin 1.5.11: execv doesn't set argv[0] on Windows programs
From: Chuck McDevitt <[email-masked]>
To: "David A. Rogers" <[email-masked]>
Cc: [email-masked], Dave Korn <[email-masked]>
Date: Fri, 10 Sep 2004 14:30:35 -0400

argv and argc are concepts from the C runtime, not the Windows OS.

The actual entry point to your program is to a routine that calls the 
initialization routines of the C library, then calls winMain.

Those initialization routines get the command line via Win32 call, 
allocates memory for argv, and parses the command line.

Windows itself has no requirement that an application support argv and 
argc, and in fact programs in other languages (VB etc) don't have any such 
concept.

Cygwin, when launching an application, just needs to make sure the 
CreateProcess call has the command line passed to it.
Everything else is handled by the the receiving program (via C runtime, if 
a C program).

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/