Исправление ошибок кодировки в Windows | SBGames



Дата создания страницы  29.04.2015 Рубрики Статьи (Руководства)

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

 

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


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

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

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

 

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

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

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

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

Windows XP

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

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

2) Теперь проверим, может у Вас слетели системные настройки шрифтов

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

Стандартные_шрифты.zip
1.05 kB
Закачек: 965

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

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 Vista/7/8

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:
 

Стандартная_кодировка.zip
1.21 kB
Закачек: 649

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

Windows XP

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"
"866"="c_866.nls"
"ACP"="1251"
"OEMCP"="866"
"MACCP"="10007"
"OEMHAL"="vga866.fon"
@="C_1251.NLS"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout\DosKeybCodes]
"00000409"="ru"

Windows Vista/7/8

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) В этом пункте, попробуем использовать файлы, который исправляют разными способами краказябры в програмах и Windows

Внутри два файла: кракозбрoff.cmd и кракозбрoff.reg
 

кракозбрoff.zip
1.85 kB
Закачек: 908

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

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

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

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

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 у Вас должно быть так:

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


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

 

 

Данная статья является переработкой статьи Кракозябры вместо русских букв с сайта VindaVoz.ru >>>

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

 


 

Комментарии


 



« |