Исправление кодировок windows xp

Обновлено: 30.06.2024

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

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

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

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

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

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

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

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

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


В Windows XP помимо этого внизу есть список "Кодовые страницы таблиц преобразования" и в нём есть строчка с цифрой 20880 . Нужно чтобы там тоже был Русский

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

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

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

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

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

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontMapper]
"ARIAL"=dword:000000cc
"DEFAULT"=dword:000000cc
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"Arial,0"="Arial,204"
"Arial,204"="Arial,204"
"Arial Cyr,0"="Arial,204"
"Arial CYR,204"="Arial,204"
"Comic Sans MS,0"="Comic Sans MS,204"
"Courier,0"="Courier New,204"
"Courier,204"="Courier New,204"
"Courier New Cyr,0"="Courier New,204"
"Courier New CYR,204"="Courier New,204"
"Fixedsys,0"="Fixedsys,204"
"Helv,0"="MS Sans Serif,204"
"MS Sans Serif,0"="MS Sans Serif,204"
"MS Sans Serif,204"="MS Sans Serif,204"
"MS Serif,0"="MS Serif,204"
"MS Shell Dlg,0"="MS Sans Serif,204"
"MS Shell Dlg,204"="MS Sans Serif,204"
"Small Fonts,0"="Small Fonts,204"
"System,0"="Arial,204"
"Tahoma,0"="Tahoma,204"
"Times New Roman,0"="Times New Roman,204"
"Times New Roman,204"="Times New Roman,204"
"Times New Roman Cyr,0"="Times New Roman,204"
"Times New Roman CYR,204"="Times New Roman,204"
"Tms Rmn,0"="MS Serif,204"
"Verdana,0"="Verdana,204"

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontMapper]
"ARIAL"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"Arial,0"="Arial,204"
"Comic Sans MS,0"="Comic Sans MS,204"
"Courier,0"="Courier New,204"
"Courier,204"="Courier New,204"
"MS Sans Serif,0"="MS Sans Serif,204"
"Tahoma,0"="Tahoma,204"
"Times New Roman,0"="Times New Roman,204"
"Verdana,0"="Verdana,204"

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

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

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

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

Windows Registry Editor Version 5.00

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1250"="c_1251.nls"
"1251"="c_1251.nls"
"1252"="c_1251.nls"
"1253"="c_1251.nls"
"1254"="c_1251.nls"
"1255"="c_1251.nls"

[HKEY_CURRENT_USER\Control Panel\International]
"Locale"="00000419"
"LocaleName"="ru-RU"
"s1159"=""
"s2359"=""
"sCountry"="Russia"
"sCurrency"="р."
"sDate"="."
"sDecimal"=","
"sGrouping"="3;0"
"sLanguage"="RUS"
"sList"=";"
"sLongDate"="d MMMM yyyy 'г.'"
"sMonDecimalSep"=","
"sMonGrouping"="3;0"
"sMonThousandSep"=" "
"sNativeDigits"="0123456789"
"sNegativeSign"="-"
"sPositiveSign"=""
"sShortDate"="dd.MM.yyyy"
"sThousand"=" "
"sTime"=":"
"sTimeFormat"="H:mm:ss"
"sShortTime"="H:mm"
"sYearMonth"="MMMM yyyy"
"iCalendarType"="1"
"iCountry"="7"
"iCurrDigits"="2"
"iCurrency"="1"
"iDate"="1"
"iDigits"="2"
"NumShape"="1"
"iFirstDayOfWeek"="0"
"iFirstWeekOfYear"="0"
"iLZero"="1"
"iMeasure"="0"
"iNegCurr"="5"
"iNegNumber"="1"
"iPaperSize"="9"
"iTime"="1"
"iTimePrefix"="0"
"iTLZero"="0"

[HKEY_CURRENT_USER\Control Panel\International\Geo]
"Nation"="203"

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

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

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

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

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

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


В этом окне есть вкладка Разрешения и в ней выбираем Администратора, затем жмём кнопку Изменить разрешения

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


Следующее окно будет почти таким же, только там есть кнопка Изменить. Жмем её

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

На заметку: если в списке нет Администратора, то добавьте его через кнопку Добавить.
Вот и добрались до нужного нам окна. Здесь нужно поставить галочку напротив Полного доступа, а можете и вообще все галочки поставить

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

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

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

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

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

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

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

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

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

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

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

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


Описание исправления ошибок кириллической кодировки в Windows Vista/7/8.

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

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

Вот так они выглядят:

1) Проверяем какой язык установлен для программ, не поддерживающих юникод

язык для программ не поддерживающих Юникод

Windows XP

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


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

2) Теперь проверим, может у Вас слетели системные настройки шрифтов
Вот Вам один хороший файл, который содержит стандартные настройки шрифтов для Windows. Внутри настройки реестра для Windows XP, Vista, 7 и 8:

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

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

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

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

3) Меняем в реестре кодировку на стандартную. Здесь всё то же самое что и в пункте 2

снова даю текст, содержащийся в этих файлах:

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

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

4) В этом пункте, попробуем использовать файлы, который исправляют разными способами краказябры в програмах и Windows

Я пользовался первым и мне помогло.


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

Запуск от имени администратора

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

6) Ну, и если ничего не помогло, попробуем ещё один способ (самый трудоемкий)
Меняем системные файлы. А если точнее, то мы не будем их менять, а лишь переименуем, чтобы до системы дошло наконец что мы хотим. Первым делом идём по пути C:\Windows\System32 и листаем вниз в поисках следующих файлов:
C_1250.NLS
C_1252.NLS
C_1253.NLS
C_1254.NLS
C_1255.NLS

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


В этом окне есть вкладка Разрешения и в ней выбираем Администратора, затем жмём кнопку Изменить разрешения


Следующее окно будет почти таким же, только там есть кнопка Изменить. Жмем её


Если в списке нет Администратора, то добавьте его через кнопку Добавить.

Вот и добрались до нужного нам окна. Здесь нужно поставить галочку напротив Полного доступа, а можете и вообще все галочки поставить


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

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

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

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

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


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

В данной статье пойдёт речь о кодировках в Windows. Все в жизни хоть раз использовали и писали консольные приложения как таковые. Нету разницы для какой причины. Будь-то выбивание процесса или же просто написать «Привет. Я не могу сделать кодировку нормальной, поэтому я смотрю эту статью!».

Тем, кто ещё не понимает, о чём проблема, то вот Вам:

image



А тут было написано:


Но никто ничего не понял.

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

1. Настройка консоли в батнике

Сразу для тех, кто пишет chcp 1251 лучше написать это:


Первый способ устранения проблемы, это Notepad++. Для этого Вам нужно открыть Ваш батник таким способом:

image

Не бойтесь, у Вас откроется код Вашего батника, а затем Вам нужно будет сделать следующие действия:

image

Если Вам ничего не помогло, то преобразуйте в UTF-8 без BOM.

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

Первый способ непосредственно Notepad++, но а если нужно сначала одну кодировку, а потом другую?

Сразу для использующих chcp 1251 пишите это:


Второй способ это написать десктопную программу, или же использовать Visual Studio. Если же не помогает, то есть первое: изменение кодировки вывода(Пример на C++).


Если же не сработает:


3. Изменение chcp 1251
Если же у Вас батник, то напишите в начало:


Теперь у Нас будет нормальный вывод в консоль. На других языках (С++):


4. Сделать жизнь мёдом
При использовании данного способа Вы не сможете:

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

При установке программы edrom на нерусифицированные версии Windows XP, Windows 7 и Windows 8 (английские, немецкие и др. версии) могут наблюдаться проблемы с кодировкой в элементах интерфейса (меню, кнопки, надписи, заголовки и т.д.), см. рисунок:

Ошибка с кодировкой в английской версии Windows 7

Далее в зависимости от версии Windows проблема решается с небольшими отличиями. Рассмотрим последовательность действий в Windows 7, Windows 8, а затем в Windows XP .

1. Windows 7

В Windows 7 следует открыть «Панель управления» (Control Panel), выбрать «Язык и региональные стандарты» (Region and Language) и в следующих трех вкладках («Форматы», «Языки и клавиатура» и «Дополнительно») установить параметры, показанные на рисунках:

1.1. Вкладка «Форматы» (нажмите на рисунок для увеличения):


1.2. Вкладка «Языки и клавиатура»:

Вкладка "Языки и клавиатура"

1.3. Вкладка «Дополнительно»:

Вкладка "Дополнительно"

2. Windows 8, Windows 10

Для решения проблемы следует открыть «Панель управления» («Control Panel») , выбрать «Региональные стандарты» («Region») и во вкладках «Форматы» (« Formats ») и «Дополнительно» (« Administrative ») установить параметры, показанные на рисунках:

2.1. «Панель управления» («Control Panel») ► «Региональные стандарты» («Region») (нажмите на рисунок для увеличения):


2.2. Вкладка «Форматы» (« Formats ») (нажмите на рисунок для увеличения):


2.3. Вкладка «Дополнительно» (« Administrative ») (нажмите на рисунок для увеличения):


Решение проблем

Если в Windows 8 проблема не решена и после выполнения всех инструкций на этой странице, используйте следующие рекомендации: в разделе Текущий язык программ, не поддерживающих Юникод (Language for non-Unicode programs) ставите Английский (США) (English (United States)) и перегружаетесь. Потом снова заходите в этот раздел и возвращаете Русский (Russia) и снова перегружаетесь. После этого все должно работать.

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

Читайте также: