On Fri, 10 Sep 2004, Chuck McDevitt wrote: > 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.
Ok, so I didn't use quite the right phrasing, but I believe it's been explained adequately since. > 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). Exactly, with one small clarification: "Cygwin, when launching an application, just needs to make sure the CreateProcess call has the *right* command line passed to it.". Currently, spawn_guts() munges the first token in that command line to match the image name, even if instructed otherwise (via the args array). Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_ [EMAIL PROTECTED] ZZZzz /,`.-'`' -. ;-;;,_ [EMAIL PROTECTED] |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski, Ph.D. '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! "Happiness lies in being privileged to work hard for long hours in doing whatever you think is worth doing." -- Dr. Jubal Harshaw -- 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/