Интернет магазин китайских планшетных компьютеров



Компьютеры - Юникод в операционных системах семейства Microsoft Windows

23 апреля 2011





Одной из первых компаний, последовательно внедрявших Юникод, была Майкрософт — Windows NT была первой операционной системой, использовавшей Юникод в системных вызовах. Было выбрано двухбайтное представление символов; начиная с Windows 2000, возможно представление символов дополнительных плоскостей с помощью суррогатных пар UTF-16.

Современные операционные системы Windows XP и Windows Server 2003, как и предшествующие им Windows NT 4 и Windows 2000, поставляются с системными библиотеками, включающими функции обоих видов: юникодовые и предназначенные для работы со строками в текущей кодовой странице системы, условно называемой ANSI-страницей. При этом для вызова юникодовых функций используется суффикс W), а для вызова ANSI-функций используется буква A). В результате на ОС семейства Windows NT запускаются и программы, способные использовать Юникод, и более старые программы, неспособные одновременно работать с символами разных языков. Большинство ANSI-функций реализованы как оболочки над соответствующими юникодовыми функциями. Использовать при этом можно только поддерживаемые этими программами символы.

В Windows CE, начиная с самых первых версий за исключением малого числа случаев использовался только UTF-16.

В 2001 году корпорация Майкрософт выпустила специальное дополнение к своим старым операционным системам Windows 95, Windows 98 и Windows Me. Дополнение называется уровнем Юникода и обеспечивает поддержку Юникода на указанных старых платформах. Это дополнение включает в себя динамическую библиотеку unicows.dll, содержащую юникодовые версии всех основных функций Windows API. В результате на старых операционных системах Windows стало возможно запускать как старые, так и новые программы, рассчитанные на использование Юникода.

В Windows NT включена функция IsTextUnicode, которая пытается статистическими методами определить, содержит ли переданная ей строка текст в Юникоде. Для очень коротких текстов эта функция часто даёт неверный результат. Например, эту функцию использует стандартный текстовый редактор Windows NT — Блокнот при открытии текстовых файлов, что породило легенды о существовании в нём «пасхальных яиц» следующего рода:

  • Откройте программу Блокнот и наберите следующий текст:
Билл Гейтс самый умный
  • Сохраните текст и закройте программу.
  • Откройте сохранённый текстовый документ, скопируйте текст в другой текстовый редактор, и вы увидите его содержимое:
쌠

Более эффектными являются фразы, целиком состоящие из латинских букв, потому что в этом случае при неверном распознавании кодировки будет отображаться целая строка кракозябр..



Просмотров: 786


<<< Юникод в Linux
Юникод Шрифты >>>