Может кто-нибудь посоветовать, как программно изменить кодовую страницу Windows XP по умолчанию (я делаю это из Delphi)? (Это будет эквивалентно переходу в Панель управления -> Региональные настройки -> Язык для приложений, не поддерживающих Юникод).
В этом случае я хочу переключиться на китайский (КНР) и пишу в следующие строки реестра:
HKLM \ SYSTEM \ CurrentControlSet \ Control \ Nls \ CodePage \
ACP = 936
MACCP = 10008
OEMCP = 936
(Это именно то, что делает изменение выпадающего списка не-Unicode в панели управления). Должен быть другой параметр, который мне нужно изменить - и я бы предпочел использовать вызов Win API (если доступен), а не записывать в реестр сам.
Я также пытался установить
HKLM \ SYSTEM \ CurrentControlSet \ Control \ NLS \ Language \
По умолчанию = 0804 (китайский КНР) безрезультатно.
Я не хочу менять «локаль» как таковую, поскольку это также изменит настройки времени / даты, разделители и т. Д. И т. Д.
Это потому, что я использую приложение ANSI, которое должно отображать китайские символы, и я пишу инструмент для автоматического переключения системного отображения символов (оставляя другие аспекты пользовательского интерфейса без изменений).
Спасибо!
Duncan