Automatic ANSI<>Unicode message translation
Dmitry Timoshkov
dmitry at baikal.ru
Thu Aug 4 21:59:15 CDT 2005
"Troy Rollo" <wine at troy.rollo.name> wrote:
> I have just finished running a series of tests using the attached programs -
> msgchar, msgchar2 and msgchar3.
>
> * The short version:
>
> WM_CHAR messages are delivered "immediately" whether sent by SendMessage or
> PostMessage.
Actually not immediately, just fast enough, so that GetMessage/DispatchMessage
delivers a message while the thread does Sleep.
[skipped]
> When using SendMessageA to send WM_CHAR to a window registered with
> RegisterClassA, no conversion is performed even if the threads have different
> values for CP_THREAD_ACP.
>
> In other words, where a conversion is performed it is always based on the
> modified CP1252, which has the effect that no visible conversion is ever
> performed for A->A messages.
That just means that your way of changing system locale using SetCPGlobal
doesn't work (not mentioning that it's quite strange to call an API in a DLL
after FreeLibrary, that works because kernel32 is already loaded before
LoadLibrary).
I skipped everything else since the tests apparently do not run on a proper
(or rather expected) locale, and the results basically show what you would
get on an english locale without SetCPGlobal hacks.
--
Dmitry.
More information about the wine-devel
mailing list