This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: cygwin 1.5.11: execv doesn't set argv[0] on Windows programs


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/
      |\      _,,,---,,_		pechtcha@cs.nyu.edu
ZZZzz /,`.-'`'    -.  ;-;;,_		igor@watson.ibm.com
     |,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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]