Command line parameters

Hin-Tak Leung hintak_leung at
Tue Jun 12 07:15:00 CDT 2012

--- On Tue, 12/6/12, John Emmas <johne53 at> wrote:

> Thanks Hin-Tak and Dan but I think we're at crossed purposes
> now.  Remember that my original question had nothing to
> do with paths.  I simply used paths as a convenient
> example.  My question is about command-line parameters
> and (more specifically) about UTF-8 string conversion. 
> Here's an example....  Consider a Windows user whose
> name is Göran.  The UTF-8 byte sequence for this is:-
> 47 C3 B6 72 61 6E   --   (6
> bytes)
> whereas Windows would expect something like this (depending
> on the user's locale):-
> 47 F6 72 61 6E   --   (5
> bytes)
> Let's suppose that a Linux app launches a Windows child
> process (via Wine).  The (Linux) host app needs to pass
> the string "Göran" as one of the command-line
> parameters.   Linux uses UTF-8 and will
> therefore pass the first sequence of bytes to Wine (6
> bytes).  But Windows doesn't understand UTF-8.  A
> Windows app would expect the second byte sequence (5 bytes -
> or 10 bytes for a Unicode app).
> Does Wine carry out the necessary conversion or does it
> simply pass the original byte string unmodified? 
> That's what I'm trying to find out.  Thanks.

I have already answered that question - it depends on your application, how it uses win32 API.  win32 api's is divided into the older *A routines which expects ascii, and the newer *W routines, which expects WCHAR (UTF16LE).

More information about the wine-devel mailing list