--- On Tue, 12/6/12, John Emmas <john...@tiscali.co.uk> wrote: <snipped> > 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).