deliver full path by argv[0] and GetCommandLine for win9x

Chris Morgan cmorgan at
Thu Feb 12 19:34:53 CST 2004

MS's documentation has been found to be incorrect or misleading in the past.  
Adding a test to wine's regression test suite would be an ideal way of not 
only confirming this behavior on windows but also ensuring that wine has the 
correct behavior and doesn't break it in the future.


On Thursday 12 February 2004 09:48 am, Frank Schruefer wrote:
> Alexandre Julliard wrote:
> > Frank Schruefer <wine at> writes:
> >>-Remark in dlls/kernel/environ.c. Quote:
> >>"
> >>  * WARNING: there's a Windows incompatibility lurking here !
> >>  * Win32s always includes the full path of the program file,
> >>  * whereas Windows NT only returns the full file path plus arguments
> >>  * in case the program has been started with a full path.
> >>  * Win9x seems to have inherited NT behaviour.
> >>"
> >>Although the comment is not accurate, you get what it says and it's
> >> exactly what the patch should fix.
> >
> > What that comment says is that Win32s behaves differently from normal
> > Windows. This may or may not be true, but it's pretty much irrelevant,
> > nobody in their right mind runs Win32s apps anymore.
> >
> > Your patch changes the Win9x behavior, and I'd really like to see a
> > test program to demonstrate that Win9x really behaves this way at the
> > kernel level, not only as a side-effect of the command interpreter
> > passing a full path to CreateProcess.
> Well, that's easily done without a testcase as it is documented by MS:
> Quote:
> "
> Note  The name of the executable in the command line that the operating
> system provides to a process is not necessarily identical to that in the
> command line that the calling process gives to the CreateProcess function.
> The operating system may prepend a fully qualified path to an executable
> name that is provided without a fully qualified path. "

More information about the wine-devel mailing list