Юникод в Microsoft Windows

Юникод в Microsoft Windows

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

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

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

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

Более эффектными являются фразы, целиком состоящие из латинских букв (например, «this app can break»), потому что в этом случае при неверном распознавании кодировки будет отображаться целая строка иероглифов.[1].

Примечания

  1. Tim Lesher this api can break (англ.). Aftermarket Pipes (2006-06-14). Проверено 29 февраля 2008.

См. также

Ссылки


Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Полезное


Смотреть что такое "Юникод в Microsoft Windows" в других словарях:

  • Юникод в операционных системах семейства Microsoft Windows — В этой статье отсутствует вступление. Пожалуйста, допишите вводную секцию, кратко раскрывающую тему статьи …   Википедия

  • Юникод в операционных системах Microsoft — Одной из первых компаний, последовательно внедрявших Юникод, была Майкрософт  Windows NT была первой операционной системой, использовавшей Юникод в системных вызовах. Было выбрано двухбайтное представление символов (UCS 2); начиная с Windows …   Википедия

  • Windows NT — …   Википедия

  • Windows XP Professional x64 Edition — Windows XP Professional x64 Edition …   Википедия

  • Windows-1251 — набор символов и кодировка, являющаяся стандартной 8 битной кодировкой для всех русских версий Microsoft Windows. Пользуется довольно большой популярностью. Была создана на базе кодировок, использовавшихся в ранних «самопальных» русификаторах… …   Википедия

  • Юникод — Юникод[1] или Уникод[2] (англ. Unicode)  стандарт кодирования символов, позволяющий представить знаки практически всех письменных языков …   Википедия

  • ЮНИКОД — Юникод, или Уникод (англ. Unicode)  стандарт кодирования символов, позволяющий представить знаки практически всех письменных языков. Стандарт предложен в 1991 году некоммерческой организацией «Консорциум Юникода» (англ. Unicode Consortium,… …   Википедия

  • Юникод Шрифты — В Unicode 6.0 представлено 109449 позиций символов и 203 блока символов. Юникод Шрифт графический рисунок начертаний букв, знаков, иероглифов которые заключены в стандарте кодирования символов, позволяющие представить знаки многих письменных… …   Википедия

  • Windows Advanced Media Player — Winamp Winamp 5.5 (обложка Bento) Тип Мультимедиа проигрыватели Разработчик ОС Microsoft Windows Версия …   Википедия

  • Windows Glyph List 4 — (сокр. WGL4, также известен как Общеевропейский набор символов англ. Pan European character set) определённый компанией Майкрософт набор из 652 типографических символов Юникода, призванный помочь разработчикам шрифтов в обеспечении… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»