Subject: Re: Bug in GUI App WinMain Arguements
From: "Martin" <[email-masked]>
To: "BB" <[email-masked]>
Cc: <[email-masked]>
Date: Fri, 4 Apr 2003 10:50:57 -0700

here is the workaround we use in Ant build (which by the way outclasses
anything any make can do)
/cygdrive/c/Documents and Settings/cygusr           //becomes
/cygdrive/c/DOCUME~1\cyguser          //workaround for 95/98 inability to
handle spaces in directory name

Martin
----- Original Message -----
From: "BB" <[email-masked]>
To: <[email-masked]>
Sent: Friday, April 04, 2003 10:34 AM
Subject: Bug in GUI App WinMain Arguements

> I'm having a problem running a windows gui app with arguments from a
mounted
> directory if the Win32Path mounted to contains blanks. (i.e. mount -s -b
> "C:/foo bar" "/foobar"). It's not a mount specific problem because it also
> occurs if the directory has a space in it.  Since mkpasswd defaulted my
home
> directory to "/cygdrive/c/Documents and Settings/cygusr", I am assuming
> Cygwin supports directories with spaces in them.  I have included a small
> program that illustrates the bug.
>
> By the way, I'm running on XP with the latest version of Cygwin newly
> installed.
>
> Also, according to the "Cygwin Users Guide", I have included the following
> line in the code.
> WinMainCRTStartup() { mainCRTStartup(); }
> It doesnt seem to be called.  Is the User Guide correct? The same problem
> occurs if I omit the line and use the "-e _mainCRTStartup" as suggested in
> the User Guide.
>
> Any suggestions?
> BB.
>
> Assuming the program listed below (prtcmdline.exe) is in
> "/cygdrive/c/Documents and Settings/cygusr"...
>
> $ cd ~
> $ pwd
> /cygdrive/c/Documents and Settings/cygusr
> $ ./prtcmdline arg1 arg2 | tail -
> default
> and Settings\cygusr\prtcmdline.exe" arg1 arg2      << wrong
> $ cp prtcmdline.exe /home/cygusr
> $ /home/cygusr/prtcmdline arg1 arg2 | tail -
> default
> arg1 arg2                       <<right
> $
>
> /****************************************************/
> /* prtcmdline.c                                     */
> /* gcc -mwindows prtcmdline.c -o prtcmdline.exe     */
> /****************************************************/
> #include <windows.h>
> #include <stdio.h>
>
> char *gstr = "default\r";
>
> WinMainCRTStartup()
> {
>  gstr = "WinMainCRTStartup() called\r";
>  mainCRTStartup();
> }
>
> int APIENTRY WinMain(HINSTANCE hInstance,
>                      HINSTANCE hPrevInstance,
>                      LPSTR     lpCmdLine,
>                      int       nCmdShow)
> {
>  puts(gstr);
>  puts(lpCmdLine);
>  return 0;
> }
> /****************************************************/
>
>
>
>
>
>
>
> --
> Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting:         http://cygwin.com/bugs.html
> Documentation:         http://cygwin.com/docs.html
> FAQ:                   http://cygwin.com/faq/
>
>

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/