Windows Vista представила концепцию трех псевдо-локалей:
Pseudo Locale Locale Name LCID
=================== =========== ======
Base qps-ploc 0x0501
Mirrored qps-mirr 0x09ff
East Asian-language qps-asia 0x05fe
Включение языка База полезно, потому что вы можете проверить, использует ли ваше приложение текущую локаль для форматирования таких элементов, как даты, время, числа, деньги.
Например, если текущая локаль установлена на База, дата будет отформатирована как:
[Штейльśđαỳ!!!], 8 ōf [Μäŕςћ!!] ōf 2006
Сборка Windows на самом деле выполняется в псевдо, а затем локализована на английском языке:
Другое значение в использовании этих локалей: он проверяет, что ваше приложение не предполагает, что 16-разрядный PRIMARYLANGID
состоит из:
- 8-разрядный идентификатор первичного языка
- 8-битный подъязычный идентификатор
когда в действительности PRIMARYLANGID::
- 10-битный идентификатор первичного языка
- 6-битный подъязычный идентификатор
или графически:
+-----------------------+-------------------------+
| Sublanguage ID | Primary Language ID |
+-----------------------+-------------------------+
15 10 9 0 bit
Эти три псевдо-локали, наконец, уходят с конца 8-го бита (что-то из-за того, что Microsoft устала делать для взлома багги-приложений).
Как включить псевдоязычность в Windows?