On 23 November 2012 17:59, Erwin Waterlander <email@example.com> wrote:
Op 23-11-2012 10:45, Yongwei Wu schreef:
> On 23 November 2012 16:34, Erwin Waterlander <firstname.lastname@example.org
> <mailto:email@example.com>> wrote:Hi Yongwei,
> * There is no way an Unicode console program can output Chinese text
> (Using WriteConsoleW()) in the Windows Console when the active
> code page
> is not cp936 (because the font is not available). This is actually
> weird, because the console code page is for non-Unicode programs.
> I can successfully output "测试" with the following line of code, when
> the console code page is 437 or 1252:
> WriteConsoleW(hConsole, L"\u6d4b\u8bd5\n", 3, &dwLen, NULL);
> However, I know my system locale is Simplified Chinese. Can you have a
> try whether it works for you?
That's correct. When the system locale is Simplified Chinese, and the
active code page is 1252 (Western European), I can also output Chinese
characters in the console while the font is Lucida Console.
But when I change the system locale to English (United States) it
doesn't work any more. Then I get two squares for the Chinese letters.
So Unicode in the console seems to work better with a Chinese system locale.