Моя Windows 7 неожиданно перестала отображать символы Unicode

По какой-то странной причине мой компьютер внезапно не показывает некоторых символов Unicode! Я понятия не имею, что случилось.

Затронутые приложения включают в себя проводник Windows (должны быть японские символы), Google Chrome (должно быть сердце) и Winamp (должны быть звездочками):

юникодаюникодаВведите описание изображения здесь

Русский, немецкий и т. Д. Символы отображаются нормально. Chrome также отображает японский скрипт на веб-сайтах, но не в графическом интерфейсе. Как я могу это исправить?

TL; DR: Обходной путь заключается в том, чтобы установить ярлык с именем Unicode на рабочем столе, чтобы explorer.exe стал первым процессом отображения строки Unicode после загрузки.


Обновление: я попытался использовать System Restore, чтобы исправить это. Мне нужно было вернуться вовремя, потому что самые последние точки восстановления не решали его, поэтому я использовал его с середины ноября. После этого снова отобразились символы Юникода. Затем я обновил свою систему с помощью Центра обновления Windows, потому что они были удалены во время восстановления. После этого произошла ошибка! Затем я выполнил восстановление до точки до новых обновлений, но ошибка сохраняется, и старая точка восстановления (которую я использовал ранее) исчезла, и в настоящее время нет других снимков системы. Любые предложения о том, что делать сейчас?

Обновление 2: я могу найти обходное решение:

Панель управленияРегион и языкАдминистрирование → Изменить язык для Unicode-несовместимых программ на японский язык (Япония) .

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

Обновление 3: Я думаю, что я изолировал конкретное обновление Windows, которое вызывает ошибку. Это медленная производительность приложений, использующих DirectWrite API на компьютере под управлением Windows 7 или Windows Server 2008 R2 . Я установил все другие обновления, кроме этого, и ошибка не повторилась.

Обновление 4: истинным происхождением этой проблемы был Chrome, см. Принятый ответ. Обход проблемы: установите ярлык с именем Unicode на рабочем столе, чтобы explorer.exe стал первым процессом отображения строки Unicode после загрузки.

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

Короче говоря, я нашел эту ошибку для Chromium, и комментарий в обсуждении говорит о том, что это так и обеспечивает обходное решение по размещению файла на основе Unicode на рабочем столе Windows, чтобы заставить Windows быть первым приложением для отображения символа юникода :

«Поэтому в качестве обходного пути для этой проблемы поместите файл с именем 火 .txt или похожим на ваш рабочий стол Windows. Я полагаю, это заставляет Windows Explorer быть первой программой для рендеринга символа [unicode]».

Я пробовал этот подход и, конечно же, работал для меня – без необходимости менять язык для Unicode несовместимых программ ».

  1. Измените свой «Язык для Unicode несовместимых программ» на японский язык (любой другой язык будет делать)
  2. Верните его обратно к исходному значению.

Он исправил проблему, с которой я столкнулся с показом китайских иероглифов после обновления Windows.

Брайан Ротштейн оставил комментарий с таким ответом .

  • Печать символа Unicode из переменной (swift)
  • Почему по умолчанию stream файлов в C ++ имеет узкие письменные данные?
  • Почему в Firefox видны только некоторые символы Юникода?
  • Каков правильный способ кодирования URL-символов Unicode?
  • Что предоставляет `` и где он документирован?
  • Имена переменных Java Unicode
  • Легкий способ удаления акцентов из строки Unicode?
  • Почему я не могу использовать \ u000D и \ u000A как CR и LF в Java?
  • Как отключить Unicode в проекте VC ++?
  • Encoding.UTF8.GetString не учитывает преамбулу / спецификацию
  • Unicode-эквиваленты для \ w и \ b в регулярных выражениях Java?
  • Давайте будем гением компьютера.