Язык программ, не поддерживающих юникод windows 10
Обновлено: 23.11.2024
Как вы, возможно, уже знаете из предыдущих статей, Windows 10 поддерживает изменение языка интерфейса с помощью языковых пакетов. Если вы работаете с локализованной учетной записью пользователя в Windows 10, которая является вашим родным языком, вам может быть интересно узнать, какой язык используется для старых приложений, не поддерживающих Unicode, и как его изменить.
Windows 10 поддерживает языковые пакеты. Установив один или несколько языковых пакетов, вы можете переключать язык интерфейса Windows на лету. Также можно использовать разные языки отображения для каждой учетной записи пользователя.
Многие приложения не поддерживают Unicode. Большинство из них — это приложения, созданные для предыдущих версий Windows.
Параметр, определяющий язык по умолчанию для использования в программах, отличных от Unicode, называется System Locale. Языковой стандарт системы определяет растровые шрифты и кодовые страницы (ANSI или DOS), которые используются в системе по умолчанию. Настройка языкового стандарта системы влияет только на приложения ANSI (не поддерживающие Unicode). Язык для программ, не поддерживающих Unicode, устанавливается индивидуально для каждой системы.
Чтобы изменить языковой стандарт системы в Windows 10, выполните следующие действия.
Примечание. Язык, который вы установили в качестве языкового стандарта системы, будет автоматически добавлен в список установленных языков в Windows 10.
Кроме того, вы можете получить доступ к той же опции в классическом приложении Панели управления. Откройте классическую панель управления и перейдите в раздел Панель управления\Часы и регион. Нажмите Регион и перейдите на вкладку Администрирование.
Winaero очень рассчитывает на вашу поддержку. Вы можете помочь сайту и дальше предлагать вам интересный и полезный контент и программное обеспечение, используя следующие варианты:
Если вам понравилась эта статья, поделитесь ею с помощью кнопок ниже. Это не потребует от вас многого, но поможет нам расти. Спасибо за вашу поддержку!
Автор: Сергей Ткаченко
Сергей Ткаченко — разработчик программного обеспечения из России, который основал Winaero еще в 2011 году. В этом блоге Сергей пишет обо всем, что связано с Microsoft, Windows и популярным программным обеспечением. Следите за ним в Telegram, Twitter и YouTube. Просмотреть все сообщения Сергея Ткаченко
Оставить ответ Отменить ответ
Свяжитесь с нами
Здесь вы можете подписаться на наши каналы. У нас есть Twitter, YouTube и Telegram, а также RSS-канал и информационный бюллетень по электронной почте.
Как мы знаем, в системе Windows мы можем установить язык для программ, не поддерживающих Unicode, в "Панель управления\Часы, язык и регион". Но что означает местный язык для приложения? Поскольку, насколько я понимаю, приложение представляет собой скомпилированный двоичный исполняемый файл, который содержит только инструкции машинного кода и никаких данных, то как кодировка символов влияет на их работу?
Можно предположить, что если исполняемый файл содержит несколько литеральных строк в сегменте кода, он будет использовать некоторый внутренний набор символов для их кодирования. Если кодировка не юникод, то будет отображаться мусор. А разве внутренний Charset не является фиксированным? Как и в Java, спецификация Java определяет внутреннюю кодировку UTF-16.
Надеюсь, кто-нибудь ответит на мои вопросы,
Имейте в виду, что Unicode не подразумевает UTF16, но в Windows это означает. Они должны были перейти на UTF8 более 15 лет назад, и этой проблемы не было бы.
@Matt Joiner: На самом деле, эта проблема все еще существует. Помните, здесь мы говорим о программах, не поддерживающих Unicode. Им совершенно все равно, используют ли программы Unicode кодировку UTF8 или UTF16.
3 ответа 3
У Windows есть два метода, с помощью которых программы могут взаимодействовать с ней, называемые "ANSI API" и "Unicode API". "Unicode API".
Это означает, что любая строка, которую приложение передает в Windows, представляет собой просто последовательность байтов, а не последовательность символов Unicode. Windows должна решить, каким символам соответствует эта последовательность байтов, и настройка панели управления, о которой вы говорите, заключается в том, как она это делает.
Так, например, программа, не поддерживающая Юникод, которая выводит байт со значением 0xE4 на ПК, настроенном на использование Windows Western, отобразит символ ä, тогда как программа, настроенная для иврита, отобразит символ ה.
И где в "ANSI API" один байт означает один символ на экране. В Юникоде символ на экране может быть представлен более чем одним байтом.
Следует также отметить, что Microsoft могла бы легко добавить UTF-8 в качестве поддерживаемого набора многобайтовых символов и решить всю проблему, но они отказываются это делать.
@RichieHindle: Хорошее объяснение. Как вы сказали, когда приложение вызывает Windows API, оно просто передает «последовательность байтов».Так является ли «последовательность байтов» в кодировании такой же, как и их исходный код? Я имею в виду, если исходный код написан в UTF-8, то они UTF-8; если исходный код находится в GBK, то последовательность байтов находится в GBK. что означает, что ANSI C не имеет фиксированной внутренней кодировки, как это делает Java (utf-16).
@Guoqin: Нет, C не определяет стандартную кодировку исходного кода или строковых литералов. Строковый литерал, выводимый программой, отличной от Unicode, будет состоять из тех же байтов, которые присутствовали в исходном коде, независимо от используемой кодировки.
Ричи Хиндл правильно объясняет, что существует два варианта большинства API: *W (Unicode) и *A (ANSI). Но после этого он немного ошибается.
Важно знать, что варианты *A (такие как MessageBoxA ) являются просто оболочками для версий *W (таких как MessageBoxW ). Они берут входные строки и преобразуют их в Unicode; они берут выходные строки и преобразуют их обратно.
Тем не менее, нет никаких причин, по которым вы не можете комбинировать функции *A и *W. Будут ли программы, которые смешивают функции *A и *W, считаться «Unicode», «не-Unicode» или даже чем-то еще? На самом деле, ответ также смешанный. Когда дело доходит до настройки часов, языка и региона, приложение считается приложением Unicode, когда оно выполняет вызов *W, и приложением, отличным от Unicode, когда оно выполняет вызов *A — настройка управляет тем, как оболочки *A перевести в *W звонки. А в многопоточных программах вы можете быть и тем, и другим одновременно (!)
Итак, возвращаясь к примеру RichieHindle, если вы вызываете функцию *A со значением (char)0xE4 , оболочка переадресует функцию *W либо с L'ä', либо с L'ה' в зависимости от этой настройки. . Если вы затем вызовете функцию *W напрямую со значением (WCHAR)0x00E4 , преобразования не произойдет.
Обсудите и поддержите язык для программ, не поддерживающих Юникод, Windows 10 — Намибия не поддерживается в настройке Windows 10 для решения проблемы; Привет, Добрый день. У меня проблема с моим бухгалтерским программным обеспечением. Кажется, он использует язык для программ, не поддерживающих юникод, чтобы переопределить мою валюту. Обсуждение в разделе «Настройка Windows 10», начатое Saltynam, 7 июня 2021 г.
язык для программ, не поддерживающих Юникод, Windows 10 — Намибия не поддерживается
язык для программ, не поддерживающих Юникод, Windows 10 — Намибия не поддерживается — похожие темы — язык, не поддерживающий Юникод
Я не могу получить доступ к языковому стандарту системы изменения языка для программ, не поддерживающих Unicode
Я не могу получить доступ к изменению языка системы для программ, не поддерживающих Unicode: мне нужно изменить язык системы для программ, не поддерживающих Unicode, но когда я нажимаю кнопку, ничего не происходит, даже не кнопка ошибки, и я не могу настроить параметры управления учетной записью пользователя то же самое, никакой ошибки, просто загрузка мыши на полсекунды по какой-то причине. если.
Как изменить язык для программы, не поддерживающей Unicode, в Winpe?
Как изменить язык для программы, не поддерживающей Юникод, на Winpe?: Может ли кто-нибудь помочь мне с проблемой, я решал ее целый день, но безуспешно, я не так хорошо знаком с командной строкой. Моя загрузка — это загрузочный компакт-диск Hiren на основе Winpe 10, версия для отображения на английском языке, но также и язык отображения для не Unicode.
Настройки языка Unicode
Языковые настройки Unicode: Привет! У меня к вам довольно странный вопрос! Итак, основная проблема: регион моей системы установлен на Венгрию, а язык установлен на английский. Мне нравится использовать окна на английском языке. Я использую программу CAD под названием PTC CREO Schematics 3.0, и она использует ту же кодировку, что и .
Проблема с греческими символами, не входящими в Юникод
Проблема с греческими символами, не входящими в Юникод. Здравствуйте, я много раз пытался установить инженерное программное обеспечение на греческом языке, но у меня возникла серьезная проблема с символами, не входящими в Юникод. У меня есть лезвие razer 14 дюймов 2017 года, купленное в Америке, если это имеет смысл. Я сделал, ничего не меняя, следующие шаги: - Управление.
Unicode UTF-8 для поддержки языка во всем мире. Создание BSOD
Юникод UTF-8 для поддержки языка по всему миру Создать BSOD: Здравствуйте, я попытался использовать бета-функцию «использовать Unicode UTF-8 для поддержки языка по всему миру», потому что у меня есть китайский и японский программное обеспечение на компьютере, которое не работает должным образом, если я не установил не юникод для Японии или Китая. Изменение на это вызывает BSOD для моего.
Язык, не поддерживающий Юникод
Как изменить языковые настройки для программ, не поддерживающих Юникод, в Win10?
Как изменить языковые настройки для программ, не поддерживающих Юникод, в Win10?: установил китайское приложение, ранее называвшееся Kuwo Music Player. Я использую это конкретное приложение уже довольно давно, и сегодня я впервые решил попробовать его и на Windows 10. Потом пошла проблема, я понял что настройки надо менять.
Не-Unicode на одном языке Windows 10.
Не-Unicode на одном языке Windows 10.: Я мог бы купить новый ноутбук, который поставляется с WIndows 10 home для одного языка. Мой единственный вопрос: позволит ли мне "один язык" изменить языковой стандарт системы для запуска программ, не поддерживающих Unicode? Извините, я не мог найти другую тему, связанную с этим конкретно. 43339
Unicodes и языковые пакеты
Юникоды и языковые пакеты. Я уверен, что многие люди разделяют мою дилемму. Юникоды, которые я хочу использовать, находятся в диапазоне от U+1000 до U+109F (плюс два расширенных диапазона, AA60–AA7F и A9E0–A9FF). Языковой пакет для бирманского (мьянманского) языка упрощает доступ к большинству этих символов, но мне нужно и это.
В этом сообщении учащиеся и новые пользователи узнают, как изменить или установить языковой стандарт системы Windows 11 для управления программами, не поддерживающими стандарт кодировки символов Unicode.
Юникод – это всемирный стандарт кодировки символов. Система использует Unicode исключительно для обработки символов и строк. Однако некоторые программы не поддерживают Unicode, и эти программы не смогут использовать стандарт Windows.
Для этого вам придется вручную настроить языковой стандарт системы в Windows 11 для использования этими программами, и в этом посте показано, как это сделать.
В отличие от отображаемого текста на языке системы, изменение языкового стандарта системы не повлияет на текст на языке в меню и диалоговых окнах или в других программах, использующих Unicode. Это изменяет только те программы, которые не поддерживают стандарт Unicode, и затрагивает все учетные записи пользователей на компьютере.
В новой Windows 11 будет много новых функций и улучшений, которые отлично подойдут для одних и добавят сложности в обучении для других. Некоторые вещи и настройки изменились настолько сильно, что людям придется изучать новые способы работы и управления Windows 11.
Windows 11 сильно изменила системные настройки, и вы не найдете там настроек для языкового стандарта системы. Мы покажем вам, как настроить его в Windows 11.
Чтобы начать настройку языковых параметров системы в Windows 11, выполните следующие действия:
Как установить языковые настройки системы в Windows 11
Системная локаль — это кодовые страницы ANSI, OEM, MAC и EBCDIC по умолчанию, используемые для программ, отличных от Unicode, и использует этот параметр программы, неправильно задающей спецификации Unicode.
Большинство настроек Windows 11 централизовано. От конфигурации системы до создания новых пользователей и обновления Windows — все это можно сделать на панели «Системные настройки».
Чтобы перейти к настройкам системы, вы можете использовать сочетание клавиш Windows + i или нажать Пуск ==> Настройки, как показано на рисунке ниже:
Кроме того, вы можете использовать поле поиска на панели задач и выполнить поиск по запросу Настройки. Затем выберите, чтобы открыть его.
Панель настроек Windows должна выглядеть примерно так, как показано на рисунке ниже. В настройках Windows нажмите «Время и язык» и выберите «Язык и регион» на правой панели экрана, как показано на изображении ниже.
На панели настроек языка и региона прокрутите страницу вниз. В разделе «Связанные настройки» нажмите ссылку «Настройки административного языка», как показано ниже.
Вы перейдете на панель настроек региона в разделе "Администрирование". Затем нажмите Изменить языковой стандарт системы. кнопку, как показано ниже.
Далее выберите из списка язык, который вы хотите использовать в качестве языкового стандарта системы, затем нажмите OK, чтобы применить изменения. Это изменение повлияет на все учетные записи пользователей на компьютере.
Вы можете отметить флажок БЕТА: использовать Unicode UTF-8 для поддержки языков во всем мире.
Вам будет предложено перезагрузить компьютер.
Выбранный вами язык для языкового стандарта системы также будет автоматически выбран в Windows 11 в качестве системного языка.
Это должно сработать!
Вывод:
В этом сообщении показано, как изменить или установить языковые настройки системы Windows в Windows 11. Если вы обнаружите какую-либо ошибку, указанную выше, сообщите об этом, используя форму комментариев ниже.
Читайте также: