On Thu, 31 Jan 2002, Bill Medland wrote: > I have a little test program that I threw together for investigating the > DrawTextEx function. (You can find it in the patches but Alexandre hasn't > accepted it yet). It takes input from the szCommandLine passed to WinMain. > Under windows I can pass a set of arguments, including a string enclosed in > quotes. I use those quotes to recognise which part of szCommandLine is "the > string". (Yes, I know it's lazy and bad argument processing). However > under Wine the quotes don't get through and if I escape them with \ then the > \ goes through too (which messes up "the string"). I haven't looked yet but > there is something weird in there. I guess one problem is that the quotes > will be removed by the shell before even reaching Wine. > > Bill > True. If wine sees the effect of a quote the shell has removed (spaces in an argument), it will quote the string with \", because if it doesn't, the C runtime will parse the spaces: [whit@giftie cmdl]$ wine cmdl.exe "quoted string" arg 0: /cmdl.exe/ arg 1: /quoted string/ [whit@giftie cmdl]$ wine cmdl.exe \"quoted string\" arg 0: /cmdl.exe/ arg 1: /"quoted/ arg 2: /string"/ [whit@giftie cmdl]$ wine --dll msvcrt=n cmdl.exe "quoted string" arg 0: /cmdl.exe/ arg 1: /quoted string/ [whit@giftie cmdl]$ wine --dll msvcrt=n cmdl.exe \"quoted string\" arg 0: /cmdl.exe/ arg 1: /"quoted/ arg 2: /string"/ [whit@giftie cmdl]$ I know, in my example, it is actually the unix shell that is breaking the argument in half, but I am confident the windows C runtime startup routines do the same. Unlike the unix shell, they only preserve spaces in an argument quoted by \", and treat " as an ordinary character. Just follow the URL earlier in this thread. It is where I got the program I compiled with lcc-win as cmdl.exe: #include <stdio.h> main(int argc, char **argv) { int i; for (i = 0; i < argc; i++) printf("arg %d: /%s/\n", i, argv[i]); } Lawson _______________________________________________ wine-users mailing list wine-users@winehq.com http://www.winehq.com/mailman/listinfo/wine-users