Іноді, внаслідок тих чи інших причин, у користувачів ОС Windows трапляється щось таке, що призводить до збою кодувань. Якась та нововстановлених програма, вірус, маніпуляції в реєстрі, мало-мало що ... Ось злетіли кодування і все-тут!
Днями у мене теж трапилася подібна річ. У деяких русифікованих програмах частина написів інтерфейсу стала виглядати так, як ніби замість букв туди вставили відбитки лап птахів:
Скажу чесно - я витратив на пошук рішення проблеми майже два дня. На всіх форумах і сервісах «питань і відповідей», у всіх мануалах і інструкціях, все як один повторювали той-же рецепт вирішення, який можливо комусь і допоміг. Але не мені. І тільки коли мої мізки вже почали закипати і будь-яка надія на вирішення проблеми покинула мене, все стало на свої місця.
Результати ж пошуків я вирішив оформити в «Універсальне керівництво за рішенням всіх проблем з кодуванням в операційних системах Windows XP і Windows Vista / 7». Хоча можливо воно не так вже й універсально ...;)
Рішення проблем з кодуванням в Windows XP:
1. Спочатку потрібно переконається, що для програм не підтримують Юнікод встановлений російську мову.
Відкриваємо «Панель управління» і двічі натискаємо на іконку «Мова і регіональні стандарти». Переходимо у вкладку «Додатково» і встановлюємо російську мову в якості «Мови програм, які не підтримують Юнікод».
Після цього знайдіть в списку, який розміщений на цій-же вкладці пункт 20880 і поставте біля нього галочку:
Збережіть зміни і перезавантажте комп'ютер. Якщо проблема не зникла переходимо до пункту 2.
2. Можливо, що проблеми з кодуванням викликані порушенням системних налаштувань шрифтів.
Для відновлення налаштувань шрифтів скачайте цей архів і запустіть файл який знаходиться в ньому ігноруючи всі попередження системи:
Перезапустіть систему. Якщо проблема не зникла переходимо до пункту 3.
3. Наступний етап - зміна ключів реєстру які відповідають за кодування. Робити ці зміни бажано тільки в крайньому випадку і тільки якщо всі попередні пункти ні до чого не привели.
Для виконання цих змін скачайте цей архів і запустіть файл знаходиться в ньому. Як і в попередньому пункті з'являться попередження системи.
Після цих змін також потрібно буде перезапустити систему.
Рішення проблем з кодуванням в Windows Vista / 7:
1. Як і у випадку з Windows XP спочатку переконайтеся що для програм не підтримують Юнікод встановлений російську мову.
Відкриваємо «Панель управління» і двічі натискаємо на іконку «Мова і регіональні стандарти». Переходимо у вкладку «Додатково» і встановлюємо російську мову в якості «Мови програм, які не підтримують Юнікод»:
Збережіть зміни і перезавантажте комп'ютер. Якщо проблема не зникла переходимо до пункту 2.
2. Для відновлення налаштувань шрифтів скачайте цей архів і запустіть файл який знаходиться в ньому ігноруючи всі попередження системи:
Перезапустіть систему. Якщо проблема не зникла переходимо до пункту 3.
3. Наступний етап - зміна ключів реєстру які відповідають за кодування. Робити ці зміни бажано тільки в крайньому випадку і тільки якщо всі попередні пункти ні до чого не привели.
Для виконання цих змін скачайте цей архів і запустіть файл знаходиться в ньому. Як і в попередньому пункті з'являться попередження системи.
Після цих змін також потрібно буде перезапустити систему.
4. Якщо все вищезгадане не допомогло потрібно поміняти імена наступних файлів кодових сторінок в папці C: \ Windows \ System32:
Файл «c_1252.nls» на «c_1252.nls.bak»
Файл «c_1253.nls» на «c_1253.nls.bak»
Файл «c_1254.nls» на «c_1254.nls.bak»
Файл «c_1255.nls» на «c_1255.nls.bak»
Оскільки ці файли захищені від зміни для виконання цієї операції бажано скористатися чудовою програмою Unlocker. Після її установки потрібно натиснути правою кнопкою миші по потрібному файлу, і вибрати пункт «Unlocker». У вікні, виберіть у випадаючому списку «Перейменувати». Змініть ім'я файлу і натисніть кнопку «OK»:
Після перейменування вищевказаних файлів скопіюйте файл «c_1251.nls» в якусь іншу папку (або скопіюйте в буфер обміну), а потім перейменуйте його на «c_1252.nls». Знову вставте (скопіюйте) файл «c_1251.nls» в папку C: \ Windows \ System32 і перейменуйте на «c_1253.nls», а потім повторіть це ще два рази з перейменуванням в «c_1254.nls» і «c_1255.nls».
В результаті виконання цього пункту, файли «c_1252.nls», «c_1253.nls», «c_1254.nls», «c_1255.nls» будуть замінені файлом «c_1251.nls». Не забудьте також повернути до первісної папку файл «c_1251.nls»: