В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Решаем проблему с кодировкой приложений Windows

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Особенно сильно проблема с кодировкой стала актуальна после выхода новой Windows 10. Микрософты опять что-то перемудрили и в итоге, в некоторых приложениях вместо языка одни кракозябры. Но все решаемо

На самом деле причин сброса или изменения кодировки может быть довольно большое множество. Но основные из них, это:

— установка какого-то системного патча

— кривые шаловливые руки и непомерная любознательность ( самая распространенная причина всех бед в windows )

Восстановление кодировки

Тем не менее, раз уж данная проблема возникла, нужно ее решать. Ниже приведены скрины, любезно предоставленные одним человеком с одного популярного форума. На них можно посмотреть без риска и экспериментов на собственной системе, ‘что будет если сменить кодировку’. Все шрифты представлены как совершенно нечитаемые арабские кракозябры.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

При всем, казалось бы, диком ужасе ситуации, решается данная проблема весьма несложно:

заходим в Панель управления -> Язык и региональные стандарты -> Закладка «Дополнительно» -> Язык программ не поддерживающих Юникод. Меняем язык с Русского на Английский, перезагружаем компьютер, снова меняем на русский и опять перезагружаем компьютер. Снова наслаждаемся красивыми родными шрифтами!

В windows 10 кодировка привязывается глобально к общему языку системы. Поэтому если у вас проблемы с отображением шрифтов, то нужно пройти: Пуск -> Параметры -> Время и Язык -> Регион и язык -> Дополнительные настройки даты и времени, региональные параметры -> и посмотреть настройки в пунктах: Язык и Региональные стандарты.

Кракозябры вместо русских букв

Кракозябры – что за слово такое интересное? Этим словом обычно русские пользователи называют неправильное/неверное отображение (кодировку) символов в программах или самой Операционной Системы. Почему такое случается? Однозначного ответа Вы не найдёте. Это может быть в следствии проделок наших “любимых” вирусов, может из-за сбоя работы ОС Windows (например пропало электричество и выключился компьютер), может программа создала конфликт с другой или ОС и всё “полетело”. В общем причин может быть много, а самая интересная – это “Оно само вот так взяло и сломалось”. Читаем статью и узнаём как исправить проблему с кодировкой в программах и ОС Windows, раз уж она случилась.

Кто до сих пор не понял о чём я имею ввиду, вот вам несколько скриншотов:

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

За отображение кодировки (шрифта) в Windows отвечает несколько “вещей” – это язык, реестр и файлы самой ОС. Теперь будем их проверять по отдельности и по пунктам.

Как убрать и исправить кракозябры вместо русского (русских букв) в программе или Windows.

Проверяем установленный язык для программ, не поддерживающих Юникод. Может он у Вас сбился.

Итак, переходим по пути: Панель управления – Язык и региональные стандарты – вкладка ДополнительноТам смотрим чтобы язык был Русский.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Перезагружаемся или перезапускаем проводник и смотрим не исчезла ли проблема. Нет? Тогда следующий пункт.

Может у Вас слетели системные настройки шрифтов? Тогда вот Вам один хороший файл, который содержит стандартные настройки шрифтов для Windows standartnye_shrifty. zip 1,05 Kb cкачиваний: 32767 На всякий случай вот Вам архиваторы

Внутри настройки реестра для Windows XP, Vista, 7 и 8

Для тех, кто любознателен или не доверяет сайту или мне, показываю содержимое этих файлов. Windows XP

Вы сами можете скопировать этот текст в Блокнот, а затем Сохранить как файл с любым названием, но главное чтобы расширение было reg.

После запуска reg файла, Вы должны согласиться с предупреждением системы о внесении изменений в реестр.

Снова перезагружаемся или перезапускаем проводник. Если проблема не пропала, то переходим к следующему пункту.

Меняем в реестре кодировку на стандартную. Здесь всё то же самое что и в пункте 2. Снова даю Вам файл для разных версий ОС Windows standartnaya_kodirovka. zip 1,21 Kb cкачиваний: 19371 снова даю текст, содержащийся в этих файлах. Для Windows XP

Эти действия Вы можете сделать и вручную, если хотите – пишите в комментариях и я напишу в какой ветке что находится и что менять нужно.

И снова нужно перезагрузиться или перезапустить проводник (перезайти в систему).

Кстати, после этого и предыдущего пункта проверяйте на всякий случай то, что написано в первом пункте. Может быт такое, что язык сменится на Английский и нужно будет поставить Русский.

Меняем системные файлы. А если точнее, то мы не будем их менять, а лишь переименуем, чтобы до системы дошло наконец что мы хотим.

Первым делом идём по пути C:WindowsSystem32 и листаем вниз в поисках следующих файлов: C_1250. NLSC_1252. NLSC_1253. NLSC_1254. NLSC_1255. NLS Нашли? Отлично. Теперь переименовываем их. Лучше будет просто добавить к названию что-то, например. bak. Здесь есть небольшая загвоздка, заключающаяся в том, что это системные файлы Windows, и ОС не даст Вам вот так просто переименовать их. Для этого нужно находиться под учетной записью администратора. Если уж совсем не получается, то кликаем правой кнопкой мыши по файлу и выбираем пункт Свойства. В окне свойств выбираем вкладку Безопасность и жмем кнопку Дополнительно.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Всё. Теперь можете переименовать файл. И так делается со всеми файлами.

1 Далее что нам нужно сделать, после того как переименовали файлы, это скопировать файл C_1251. NLS в какую-нибудь папку или место. Это самый нужный файл, который как раз и отвечает за русскую кодировку.

2 Теперь этот файл переименовываем как C_1252. NLS , копируем и вставляем в папку System32.

3 В принципе можно на этом уже и закончить, но если начали, то давайте делать до конца. А это значит что нужно вновь переименовать тот файл, который скопировали в папку (первоначально он был C_1251. NLS , а сейчас C_1252. NLS ), на C_1250. NLS и потом его снова вставить в System32. Затем всё это повторяем для других файлов, переименовывая и вставляя C_1253. NLS , C_1254. NLS и C_1255. NLS в папку system32.

Не запутались? Может быть.

В итоге в папке C:WindowsSystem32 у Вас должно быть так:

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Надеюсь доступно объяснил. Если проще, то мы просто берем файл C_1251. NLS и переименовываем его в другие, перед этим те самые другие переименовав, чтобы не было конфликтов в названии. Вот как то так.

Нашёл в интернете интересную программку, сам её не тестировал, но автор обещает что с её помощью можно исправить кракозябры.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

находится она по ЭТОЙ ссылке.

Последний пункт, в котором я даю Вам файл, который помог мне всё исправить когда-то и именно поэтому я его оставил на память. Вот архив: krakozyabrooff. zip 1,85 Kb cкачиваний: 25856 Внутри два файла: кракозбрoff. cmd и кракозбрoff. reg

Принцип у них одинаковый – исправить всеми способами иероглифы, квадратики, вопросы или восклицательные знаки в програмах и ОС Windows (в простонародье кракозябры). Я пользовался первым и мне помогло.

Ну и напоследок пара советов:1) Если работаете с реестром, то не забывайте делать бэкап (резервную копию) на тот случай, если что-то пойдёт не так. 2) Желательно после каждого пункта проверять 1ый пункт.

На этом всё. Теперь Вы знаете как исправить убрать/исправить Кракозябры (квадратики, иероглифы, восклицательные и вопросительные знаки) в программе или Windows.

Исправляем проблемы с отображением русских букв в Windows 10

В процессе работы в Windows 10 может возникнуть ситуация, когда русские символы в системе перестают корректно отображаться. Вместо них мы видим нечто невразумительное, некие иероглифы или кракозябры, не обладающие каким-либо практическим смыслом. Обычно такое случается, когда неправильно выбрана локаль в региональных настройках.

Частенько это имеет место быть, когда вы работаете с русскоязычными символами в операционке с английской локализацией, поскольку в ней для русскоязычной программы по умолчанию отсутствуют средства обработки кириллицы, да и какого-либо другого языка с нелатинскими символами, будь это греческая, китайская либо японская языковая конструкция. В этой статье я расскажу, как убрать кракозябры в Windows 10, и вместо них работать с корректно отображающимися русскими символами.

Обычно кракозябры отображаются не везде. К примеру, кириллические символы в названиях программ на рабочем столе написаны абсолютно правильно, без ошибок, а вот если запустить на инсталляцию один из дистрибутивов с поддержкой русского языка, то тут же все начинает идти вкривь и вкось, текст становится нечитаемым, и вы буквально не знаете, что делать.

Ниже я расскажу, как избавиться от этой проблемы, решив ее в свою пользу раз и навсегда.

Стоит понимать, что вся проблема в том, что в вашей операционной системе изначально отсутствует поддержка кириллицы. Скорее всего, вы установили дистрибутив на английском языке, и поверх него установили расширенный пакет для русификации системы, но это не решает всех проблем. Текст все равно является нечитаемым, а описанная проблема остается и никуда не исчезает.

Первое, что может прийти в голову в данной ситуации — это переставить ОС с нуля на русскую версию, где изначально уже присутствует поддержка кириллических символов. Но предположим, что этот вариант для вас не годится, поскольку вы хотите работать именно в англоязычной среде, где все символы кириллицы отображаются корректно и без багов. Именно о такой ситуации и пойдет речь в моей инструкции, которая в этом случае и придется вам как никогда кстати.

Программы для очистки компьютера от мусора

Суть проблемы

Как правило, мы можем наблюдать эти кракозябры не в каждой программе. Например, символы, изображённые кириллицей в названии программ, отображены корректно. Но если запустить программу установки дистрибутивов, поддерживающих русский язык, мы получаем неведомую нам «китайскую грамоту».

И, пожалуй, основная проблема кроется в том, что в имеющейся ОС по дефолту отсутствует поддержка кириллических символов. На практике это может значить, что вы инсталлировали английский дистрибутив с установленным поверх него расширенным пакетом русификации. Однако последний не смог решить проблему корректно.

Первое, что пытаются делать пользователи в такой ситуации – переустановка операционки с чистого листа. Однако не все согласятся на такое, ведь кто-то, возможно, намеренно хочет работать с англоязычной средой. И в этой среде кириллические символы по идее могут и должны отображаться корректно.

Виды кодировок текста

А их, в общем-то, хватает.

Одной из самых “древних” считается американская кодировочная таблица (ASCII, читается как “аски”), принятая национальным институтом стандартов. Для кодировки она использовала 7 битов, в первых 128 значениях размещался английский алфавит (в нижнем и верхнем регистрах), а также знаки, цифры и символы. Она больше подходила для англоязычных пользователей и не была универсальной.

Отечественный вариант кодировки, для которого стали использовать вторую часть кодовой таблицы – символы с 129 по 256. Заточена под русскоязычную аудиторию.

8-битные кодировки, появились как следствие разработки самой популярной операционной системы, Windows. Номера с 1250 по 1258 указывают на язык, под который они заточены, например, 1250 – для языков центральной Европы; 1251 – кириллический алфавит.

KOI8-R, KOI8-U, KOI-7 – стандарт для русской кириллицы в юникс-подобных операционных системах.

В настоящее время, как говорится, “рулит” UTF-8 – именно она обеспечивают наилучшую совместимость со старыми ОС, которые использовали 8-битные символы. В UTF-8 кодировке находятся большинство сайтов в сети Интернет и именно этот стандарт является универсальным (поддержка кириллицы и латиницы).

Разумеется, я привел не все виды кодировок, а только наиболее ходовые. Если же Вы хотите для общего развития знать их все, то полный список можно отыскать в самом браузере. Для этого достаточно пройти в нем на вкладку “Вид-Кодировка-Выбрать список” и ознакомиться со всевозможными их вариантами (см. изображение).

Думаю возник резонный вопрос: “Какого лешего столько кодировок?”. Их изобилие и причины возникновения можно сравнить с таким явлением, как кроссбраузерность/кроссплатформенность. Это когда один и тот же сайт сайт отображается по-разному в различных интернет-обозревателях и на различных гаджет-устройствах. Кстати у сайта «Заметки Сис. Админа» с этим, как Вы заметили всё в порядке :).

Все эти кодировки – рабочие варианты, созданные разработчиками “под себя” и решение своих задач. Когда же их количество перевалило за все разумные пределы, а в поисковиках стали плодиться запросы типа: “Как убрать кракозябры в браузере?” — разработчики стали ломать голову над приведением всей этой каши к единому стандарту, чтобы, так сказать, всем было хорошо. И кодировка Unicode, в общем-то, это “хорошо” и сделала. Теперь если такие проблемы и возникают, то они носят локальный характер, и не знают как их исправить только совсем непросвещенные пользователи (впрочем, часто беда с кодировкой и отображением сайтов появляется из-за того, что веб-мастер указал на стороне сервера некорректный формат, и приходится переключать кодировку в браузере).

Ну вот, собственно, пока вся «базово необходимая» теория, которая позволит Вам “не плавать” в кодировочных вопросах, теперь переходим к практической части статьи.

Используем системные настройки для решения проблемы

Прежде всего, попробуем исправить ошибку через панель управления. Чтобы зайти в неё нажимаем ПКМ по кнопке-меню «Пуск» и в выпавшем списке выбираем соответствующий пункт.

В открывшемся новом окне находим раздел Часы, язык, регион.

В новом разделе выбираем категорию региональных стандартов.

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

Также здесь нам предлагается изменить формат денежных единиц и обозначение таковых. Здесь же мы можем настроить локальные параметры для разных регионов, включая отображаемые в системе текстовые символы. Именно эти опции нас и интересуют. Для их выбора переходим ко вкладке «Дополнительно» в верхней части окна.

Переходим в раздел выбора языка, не поддерживающего Юникод, и далее выбираем опцию изменение языка системы.

В списке выбираем нужный вариант (в нашем случае «Русский (Россия)» и нажимаем «ОК»)

В появившемся окне уведомлений выбираем «Перезагрузить сейчас».

ПК уйдёт в перезагрузку, после чего проблема с кракозябрами должна исчезнуть. Однако не всегда этот способ срабатывает. Если он не помог решить проблему, рассмотрим ещё один вариант, в котором нам придётся поработать с реестром.

Notepad +++

Самый простой способ открыть документ Блокнот, где вместо букв квадратики – применить сторонний софт. Популярен Notepad+++. Это тот же Блокнот, но обладающий дополнительными функциями. Имеет следующие преимущества:

  • Распространяется бесплатно;
  • Как и Ворд, имеет кнопку отмены последнего действия;
  • Поддерживает одновременную работу с несколькими файлами;
  • Позволяет изменить или выбрать шифрование.
  • Автоматически дописывает тексты;
  • Поддерживает плагины.

Чтобы иероглифы вместо русских букв преобразовались, откройте документ Блокнота в данной программе. В ленте меню сверху найдите вкладку Кодировки. Нажмите на нее. Откроется меню с перечислением всех их типов. Не всегда очевидно, какой именно тип шифрования применялся, потому, чтобы выбрать правильный для перекодировки, нужно попробовать несколько. Текст пред этим выделите.

По мере применения кодировок, символы в документе могут меняться (по одному нажатию в меню) или оставаться неизменными. В результате, после применения определенной, текст станет читаемым.

Редактируем страницу кода вручную

Страницы кода отвечают за сопоставление символов с байтами. Таких таблиц бывает много, и каждая из них работает с различными языками. Зачастую кракозябры появляются при неправильном выборе страницы и её сопоставлении. Чтобы исправить это, нам предстоит поработать с реестром. Для этого:

  • В окне реестра нам нужно перейти по следующему пути: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlNls
  • Здесь выбираем папку CodePage и в правой части окна идём вниз, чтобы найти пункт ACP.
  • Дважды кликаем ЛКМ по ACP, и перед нами открывается окно изменений строковых настроек. Здесь выставляем значение 1251. Если такое значение уже установлено для этого пункта, тогда нужно сделать по-другому.

Находясь в том же разделе CodePage, в правой части окна ищем пункт 1252. Жмём по нему дважды ЛКМ и в появившемся окне меняем текущее значение 1252 на 1251.

Использование реестра, если метод выше не помог

Создадим в текстовом редакторе обычный файлик, но дадим ему расширение. reg, дабы впоследствии можно было применить все настройки, хранящиеся в нем. Итак, какое же содержимое reg-файла должно быть?

Что такое FPS в играх

Наберем в него ручками или скопируем через буфер обмена следующие значения:

Когда все указанные строки окажутся в reg-файле, запустим его, согласимся с внесением изменений в систему, после чего выполним перезагрузку ПК и смотрим на результаты. Кракозябры должны исчезнуть.

Важное замечание: перед внесением изменений в реестр лучше создать резервную копию (другими словами, бэкап) реестра, дабы вносимые впоследствии изменения не повлекли за собой крах операционки, и ее не пришлось переустанавливать с нуля. Тем не менее, если вы уверены, что эти действия безопасны для вашей ОС, можете этот пункт упустить.

Мета тег charset

Если вы сделали то, что я описывал в предыдущем шаге и ваша проблема не разрешилась, тогда самое время испробовать второй метод устранения кракозябров.

Всё, что нам требуется, это вставить следующий код между тегами

сайта. Прежде всего проверьте, возможно этот метатег у вас уже присутствует. Если да, то посмотрите какое у него стоит значение параметра charset.

В темах WordPress обычно этот тег уже имеется по умолчанию и выглядит следующим образом:

Исправление отображения кириллицы с помощью настроек языка и региональных стандартов Windows 10

Самый простой и чаще всего работающий способ убрать кракозябры и вернуть русские буквы в Windows 10 — исправить некоторые неправильные настройки в параметрах системы.

Для этого потребуется выполнить следующие шаги (примечание: привожу также названия нужных пунктов на английском, так как иногда необходимость исправить кириллицу возникает в англоязычных версиях системы без нужды менять язык интерфейса).

  • Откройте панель управления (для этого можно начать набирать «Панель управления» или «Control Panel» в поиске на панели задач.
  • Убедитесь, что в поле «Просмотр» (View by) установлено «Значки» (Icons) и выберите пункт «Региональные стандарты» (Region).

Выберите русский язык, нажмите «Ок» и подтвердите перезагрузку компьютера.

Как исправить отображение кириллицы или кракозябры в Windows 10

Одна из возможных проблем, с которыми можно столкнуться после установки Windows 10 — кракозябры вместо русских букв в интерфейсе программ, а также в документах. Чаще неправильное отображение кириллицы встречается в изначально англоязычных и не совсем лицензионных версиях системы, но бывают и исключения.

В этой инструкции — о том, как исправить «кракозябры» (или иероглифы), а точнее — отображение кириллицы в Windows 10 несколькими способами. Возможно, также будет полезным: Как установить и включить русский язык интерфейса в Windows 10 (для систем на английском и других языках).

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

После перезагрузки проверьте, была ли решена проблема с отображением русских букв в интерфейсе программ и (или) документах — обычно, кракозябры бывают исправлены после этих простых действий.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Как исправить иероглифы Windows 10 путем изменения кодовых страниц

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

С помощью редактора реестра

Первый способ — использовать редактор реестра. На мой взгляд, это самый щадящий для системы метод, тем не менее, рекомендую создать точку восстановления прежде чем начинать. Совет про точки восстановления относится и ко всем последующим способам в этом руководстве.

  • Перейдите к разделу реестраи в правой части пролистайте значения этого раздела до конца.
  • Дважды нажмите по параметру ACP, установите значение 1251 (кодовая страница для кириллицы), нажмите Ок и закройте редактор реестра.
  • Перезагрузите компьютер (именно перезагрузка, а не завершение работы и включение, в Windows 10 это может иметь значение).

Обычно, это исправляет проблему с отображением русских букв. Вариация способа с помощью редактора реестра (но менее предпочтительная) — посмотреть на текущее значение параметра ACP (обычно — 1252 для изначально англоязычных систем), затем в том же разделе реестра найти параметр с именем 1252 и изменить его значение с c_1252. nls на c_1251. nls.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Путем подмена файла кодовой страницы на c_1251. nls

Второй, не рекомендуемый мной способ, но иногда выбираемый теми, кто считает, что правка реестра — это слишком сложно или опасно: подмена файла кодовой страницы в C: Windows System32 (предполагается, что у вас установлена западно-европейская кодовая страница — 1252, обычно это так. Посмотреть текущую кодовую страницу можно в параметре ACP в реестре, как было описано в предыдущем способе).

  • Зайдите в папку C: Windows System32 и найдите файл c_1252.NLS, нажмите по нему правой кнопкой мыши, выберите пункт «Свойства» и откройте вкладку «Безопасность». На ней нажмите кнопку «Дополнительно».
  • В поле «Владелец» нажмите «Изменить».
  • В поле «Введите имена выбираемых объектов» укажите ваше имя пользователя (с правами администратора). Если в Windows 10 используется учетная запись Майкрософт, вместо имени пользователя укажите адрес электронной почты. Нажмите «Ок» в окне, где указывали пользователя и в следующем (Дополнительные параметры безопасности) окне.
  • Вы снова окажетесь на вкладке «Безопасность» в свойствах файла. Нажмите кнопку «Изменить».
  • Переименуйте файл c_1252.NLS (например, измените расширение на .bak, чтобы не потерять этот файл).
  • Удерживая клавишу Ctrl, перетащите находящийся там же в C:WindowsSystem32 файл c_1251.NLS (кодовая страница для кириллицы) в другое место этого же окна проводника, чтобы создать копию файла.
  • Переименуйте копию файла c_1251.NLS в c_1252.NLS.
  • Перезагрузите компьютер.

После перезагрузки Windows 10 кириллица должна будет отображаться не в виде иероглифов, а как обычные русские буквы.

Как поменять кодировку?

Представьте себе: вы запустили на своем компьютере программу. Вы точно знаете, что она должна быть на русском языке, но вместо привычных букв отображаются какие то «кракозябры». Это значит, что у вас проблемы с кодировкой. Страна Советов расскажет, как поменять кодировку.

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

Для начала мы расскажем, как поменять кодировку через элемент Языки и региональные стандарты в Панели управления. Чтобы вызвать окно смены языка, можно использовать два основных способа. Первый — нажать на кнопку Пуск, выбрать в развернувшемся меню пункт Панель управления, а в нем — Языки и региональные стандарты. Второй — нажать на кнопку Пуск, в развернувшемся меню выбрать пункт Выполнить, в открывшейся строке набрать команду intl. cpl и нажать клавишу Enter.

Откроется окно смены языка. Чтобы поменять кодировку символов, вам нужно на вкладке Месторасположение выбрать Россия (в Windows 7 эта вкладка может называться просто Расположение). Затем перейдите на вкладку Дополнительно и выберите русский язык в качестве языка, используемого в программах, не поддерживающих Юникод. Сохраните изменения, нажав на кнопку ОК.

Также проблемы с кодировкой можно решить путем редактирования реестра, если предыдущий способ не помог. Но сразу хотим предупредить — неумелое редактирование реестра может привести к проблемам в работе компьютера. Если вы отредактируете что-то не то, вам может даже придется переустановить операционную систему. Так что если вы не уверены в результате — обратитесь к специалисту.

Поменять кодировку в Windows через реестр можно двумя способами. Первый способ — эта смена кодировки через редактор реестра. Для этого вам нужно нажать на кнопку Пуск, в развернувшемся меню выбрать пункт Выполнить, в открывшейся строке набрать команду regedit и нажать клавишу Enter. В левой части открывшегося окна вы увидите дерево, показывающее структуру реестра.

Выберите в нем ветвь под названием HKEY_LOCAL_MACHINE и нажмите на стрелочку рядом с ней — ветвь развернется. В открывшемся списке выберите ветвь SYSTEM, в ней — CurrentControlSet, далее последовательно — Control, Nls, CodePage. В открывшемся в правой панели списке параметров найдите параметр 1252, кликните на него правой кнопкой мыши и в открывшемся контекстном меню выберите пункт Изменить. В поле Значение введите параметр c_1252. nls и нажмите на кнопку ОК. Можете выходить из Редактора реестра — вы только что поменяли параметры кодовых страниц Windows. Перезагрузите компьютер, чтобы внесенные изменения вступили в силу.

Можно сделать то же самое, но в автоматическом режиме. Для этого запустите текстовый редактор Блокнот (он обычно поставляется в составе операционной системы Windows) и скопируйте в него приведенный ниже код:

Виды консолей

В общем случае функции консоли таковы:

  • управление операционной системой и системным окружением приложений на основе применения стандартных системных устройств ввода-вывода (экран и клавиатура), использования команд операционной системы и/или собственно консоли;
  • запуск приложений и обеспечение их доступа к стандартным потокам ввода-вывода системы, также с помощью стандартных системных устройств ввода-вывода.

Основная консоль Windows — командная строка или иначе командный процессор (CMD). Большие возможности предоставляют оболочки PowerShell (PS), Windows PowerShell (WPS) и Terminal. По умолчанию Windows устанавливает Windows Power Shell мажорной версией до 5, однако предлагает перейти на новую версию — 7-ку, имеющую принципиальное отличие (вероятно, начинающееся с 6-ки) — кроссплатформенность. Terminal — также отдельно уставливаемое приложение, по сути интегратор всех ранее установленных оболочек PowerShell и командной строки.

Отдельным видом консоли можно считать консоль отладки Visual Studio (CMD-D).

Конфликт кодировок

Полностью локализованная консоль в идеале должна поддерживать все мыслимые и немыслимые кодировки приложений, включая свои собственные команды и команды Windows, меняя «на лету» кодовые страницы потоков ввода и вывода. Задача нетривиальная, а иногда и невозможная — кодовые страницы DOS (CP437, CP866) плохо совмещаются с кодовыми страницами Windows и Unicode.

История кодировок здесь: О кодировках и кодовых страницах / Хабр (habr. com)

Исторически кодовой страницей Windows является CP1251 (Windows-1251, ANSI, Windows-Cyr), уверенно вытесняемая 8-битной кодировкой Юникода CP65001 (UTF-8, Unicode Transformation Format), в которой выполняется большинство современных приложений, особенно кроссплатформенных. Между тем, в целях совместимости с устаревшими файловыми системами, именно в консоли Windows сохраняет базовые кодировки DOS — CP437 (DOSLatinUS, OEM) и русифицированную CP866 (AltDOS, OEM).

Совет 1. Выполнять разработку текстовых файлов (программных кодов, текстовых данных и др. ) исключительно в кодировке UTF-8. Мир любит Юникод, а кроссплатформенность без него вообще невозможна.

Совет 2. Периодически проверять кодировку, например в текстовом редакторе Notepad++. Visual Studio может сбивать кодировку, особенно при редактировании за пределами VS.

Поскольку в консоли постоянно происходит передача управления от приложений к собственно командному процессору и обратно, регулярно возникает «конфликт кодировок», наглядно иллюстрируемый таблица 1 и 2, сформированных следующим образом:

Команды и код приложения под катом

Командную часть задания все консоли локализовали практически без сбоев во всех кодировках, за исключением: в WPS неверно отображена русскоязычная часть команды во всех кодировках.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Вывод тестового приложения локализован лишь в 50% испытаний, как показано в табл.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Табл. Результат запуска приложения LoggingConsole. Test

По умолчанию Windows устанавливает для консоли кодовые страницы DOS. Чаще всего CP437, иногда CP866. Актуальные версии командной строки cmd. exe способны локализовать приложения на основе русифицированной кодовой страницы 866, но не 437, отсюда и изначальный конфликт кодировок консоли и приложения. Поэтому

Совет 4. Перед запуском приложения необходимо проверить кодовую страницу консоли командой CHCP и ей же изменить кодировку на совместимую — 866, 1251, 65001.

Совет 5. Можно установить кодовую страницу консоли по умолчанию. Кратко: в разделе реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftCommand Processor добавить или изменить значение параметра Autorun на: chcp <номер кодовой страницы>. Очень подробно здесь: Изменить кодовую страницу консоли Windows по умолчанию на UTF-8 (qastack. ru), оригинал на английском здесь: Change default code page of Windows console to UTF-8.

Проблемы консолей Visual Studio

В Visual Studio имеется возможность подключения консолей, по умолчанию подключены командная строка для разработчика и Windows PowerShell для разработчика. К достоинствам можно отнести возможности определения собственных параметров консоли, отдельных от общесистемных, а также запуск консоли непосредственно в директории разработки. В остальном — это обычные стандартные консоли Windows, включая, как показано ранее, установленную кодовую страницу по умолчанию.

Отдельной опцией Visual Studio является встроенная односеансная консоль отладки, которая перехватывает команду Visual Studio на запуск приложения, запускается сама, ожидает компиляцию приложения, запускает его и отдает ему управление. Таким образом, отладочная консоль в течение всего рабочего сеанса находится под управлением приложения и возможность использования команд Windows или самой консоли, включая команду CHCP, не предусмотрена. Более того, отладочная консоль не воспринимает кодовую страницу по умолчанию, определенную в реестре, и всегда запускается в кодировке 437 или 866.

Совет 6. Тестирование приложения целесообразно выполнять во внешних консолях, более дружелюбных к локализации.

Анализ проблем консолей был бы не полон без ответа на вопрос — можно ли запустить консольное приложение без консоли? Можно — любой файл «. exe» запустится двойным кликом, и даже откроется окно приложения. Однако консольное приложение, по крайней мере однопоточное, по двойному клику запустится, но консольный режим не поддержит — все консольные вводы-выводы будут проигнорированы, и приложение завершится

Локализация отладочной консоли Visual Studio

Отладочная консоль — наиболее востребованная консоль разработчика, гораздо более удобная, чем внешняя консоль, поэтому резонно приложить максимум усилий для ее локализации.

На самом деле, правильнее говорить о локализации приложения в консоли — это важное уточнение. Microsoft по этому поводу высказывается недвусмысленно: «Programs that you start after you assign a new code page use the new code page. However, programs (except Cmd. exe) that you started before assigning the new code page will continue to use the original code page». Иными словами, консоль можно локализовать когда угодно и как угодно, но приложение будет локализовано в момент стабилизации взаимодействия с консолью в соответствии с текущей локализацией консоли, и эта локализация сохранится до завершения работы приложения. В связи с этим возникает вопрос — в какой момент окончательно устанавливается связь консоли и приложения?

Важно! Приложение окончательно стабилизирует взаимодействие с консолью в момент начала ввода-вывода в консоль, благодаря чему и появляется возможность программного управления локализацией приложения в консоли — до первого оператора ввода-вывода.

Ниже приведен пример вывода тестового приложения в консоль, иллюстрирующий изложенное. Метод Write получает номера текущих страниц, устанавливает новые кодовые страницы вводного и выводного потоков, выполняет чтение с консоли и записывает выводную строку, содержащий русский текст, в том числе считанный с консоли, обратно в консоль. Операция повторяется несколько раз для всех основных кодовых страниц, упомянутых ранее.

  • приложение меняет кодовые страницы консоли (current, setted);
  • по окончании работы приложения изменения консоли сохраняются (строка 14 — Active codepage 1252);
  • Приложение адекватно локализовано только в случае совпадения текущих кодовых страниц консоли (setted 1251:1251) с начальными кодовыми страницами (строки 8 и 10).

Код тестового приложения под катом

Совет 7. Обязательный и повторный! Функции SetConsoleCP должны размещаться в коде до первого оператора ввода-вывода в консоль.

Стратегия локализации приложения в консоли

  • Удалить приложение PowerShell (если установлено), сохранив Windows PowerShell;
  • Установить в качестве кодовую страницу консоли по умолчанию CP65001 (utf-8 Unicode) или CP1251 (Windows-1251-Cyr), см. совет 5;
  • Разработку приложений выполнять в кодировке utf-8 Unicode;
  • Контролировать кодировку файлов исходных кодов, текстовых файлов данных, например с помощью Notepad++;
  • Реализовать программное управление локализацией приложения в консоли, пример ниже под катом:

Пример программной установки кодовой страницы и локализации приложения в консоли

Убираем кракозябры в Windows 7

Основная причина рассматриваемой неполадки – не распознается установленная системой кодировка либо выбрана неправильная таблица перекодировки. Устранить эту проблему можно несколькими методами.

Смена системной локали

В большинстве случаев устранить трудности с распознаванием кодировки можно сменой системной локали – с русской на английскую, затем снова на русскую. Делается это следующим образом:

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Перейдите к разделу «Языки и клавиатуры» («Keyboards and Languages»), после чего воспользуйтесь выпадающим меню «Выберите язык интерфейса» («Change System Locale»), в котором выберите вариант «English».

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Перезагрузите компьютер, после чего повторите шаги 1-3, но на этот раз выберите язык интерфейса «Русский».

Изменение кодировки через системный реестр

Второй метод исправления ошибок с чтением кодировки заключается в ручном выборе требуемых таблиц через системный реестр.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Перейдите по адресу

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Далее предстоит довольно затратная по времени процедура – каждый из ключей, который находится в этом каталоге, следует заменить на CP_1251 : откройте произвольный ключ двойным щелчком левой кнопки мыши по нему, введите новое значение ключа и нажимайте «ОК».

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Альтернативный вариант Первая представленная последовательность замены кодировки неэффективна по времени, но существует способ её ускорить – создать файл REG с заранее прописанными командами.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Вставьте в окно следующий текст:

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Внимание! Обязательно после последней строчки введите пустую строку!

В конце процедуры нажмите «Сохранить».

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

Закрывайте «Блокнот» и переходите к директории, в которую сохранили файл. Обратите внимание, что теперь его иконка имеет вид файла реестра. На этом этапе рекомендуем сделать резервную копию данных — откройте «Редактор реестра» и воспользуйтесь пунктами «Файл» — «Экспорт».

После этого можно запустить созданный REG-файл двойным щелчком ЛКМ.

Подтвердите, что желаете внести изменения.

В Windows 10 программа предлагает три исправления крапинок на месте русских букв

В большинстве случаев вышеуказанных действий достаточно для устранения всех проблем с кракозябрами, но стоит иметь в виду, что они могут привести к другим неполадкам, поэтому применять его рекомендуем исключительно в крайнем случае.

Переустановка операционной системы

Описанные выше способы могут не иметь желаемого эффекта – проблема продолжает наблюдаться, несмотря на действия пользователя. В таком случае некорректную ассоциацию таблиц кодировок вручную изменить невозможно, и единственным способом её устранить будет переустановка ОС.

Заключение

Мы рассмотрели методы устранения проблемы с отображением кракозябр вместо нормального текста в Windows 7. Напоследок хотим отметить, что такой сбой чаще всего наблюдается в пиратских «репаках», поэтому ещё раз напоминаем – используйте только лицензионное ПО или его свободные аналоги.

Далее показан путь для 100% ного восстановления кодировки в вашей любимой системе. Обратимся к скринам, чтобы лучше понимать, что Вы пришли именно по адресу, что проблема, с которой Вы столкнулись, именна та, рецепт для которой описан в этом материале.

Несмотря на весь ужас и тот факт, что текст совсем нечитабельный, решение проблемы не такое уже и сложное. Здесь описано 2 варианта для разных версий виндовс, надеюсь, вы понимаете, для какой именно версии нужно решать проблему.

Для Windows 7

заходим в Панель управления->Язык и региональные стандарты->Закладка «Дополнительно»->Язык программ не поддерживающих Юникод. Производим замену языка с русского на английский, после этого перезагружаем компьютер, затем производим замену языка на Русский и снова перезагружаемся. А теперь наслаждайтесь решенной проблемой.

Для Windows 10

Кодировка приязывается к общему языку системы на глобальном уровне. И для решения Вашей проблемы перейдите по пути: Пуск->Параметры->Время и язык->Регион и язык->Дополнительные настройки даты и времени, региональные параметры->и посмотрите настрйки в таких пунктах как: Язык и региональные стандарты

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *