My Windows 7 has suddenly stopped displaying Unicode symbols
For some strange reason, my computer suddenly doesn't show certain unicode characters anymore! I have no idea what happened.
Affected applications include Windows Explorer (should be Japanese characters), Google Chrome (should be a heart), and Winamp (should be stars):
Russian, German etc. characters are displayed normally. Chrome also displays Japanese script on websites, but not in the GUI. How can I fix it?
TL;DR: A workaround is to put a shortcut with a Unicode name on the desktop so that explorer.exe is the first process to display a Unicode string after booting.
Update: I have tried to use System Restore to fix it. I needed to go back in time quite a while because the most recent restore points didn't solve it so I used one from the middle of November. After that restore, Unicode symbols were displayed again. Then I updated my system with Windows Update again because those were removed during the restore. After that, the error occurred again! I then did a restore to a point before my new updates, but the error persists, and the old restore point (which I used before) is gone and there are currently no other snapshots of the system. Any suggestions on what to do now?
Update 2: I could find a workaround:
Control Panel → Region and Language → Administration → Change Language for Unicode-incompatible programs to Japanese (Japan).
All mentioned programs display their symbols correctly again. However, I don't consider this a fix because these programs are not usually Unicode-incompatible, and it also leads to some (non-serious) artifacts in some programs. I still welcome an answer that tells me what went wrong here and how to fix the issue.
Update 3: I think I have isolated the particular Windows Update which causes the error. It is Slow performance in applications that use the DirectWrite API on a computer that is running Windows 7 or Windows Server 2008 R2. I have installed all other updates except this one, and the error did not occur again.
Update 4: The true origin of this problem was Chrome, see accepted answer. Workaround: put shortcut with Unicode name on desktop so that explorer.exe is the first process to display a Unicode string after booting.
Found this interesting tidbit. It seems that this may have something to do with which application first tries to display a unicode character.
Long story short, I found this bug for Chromium and a comment in the discussion suggests that this is the case and provides a workaround of putting a unicode-named file on the Windows desktop to force Windows to be the first application to render a unicode character:
"Therefore, as a workaround for this issue, put a file named 火.txt or similar on your Windows Desktop. I suppose this causes Windows Explorer to be the first program to render a [unicode] character."
I tried this approach and sure enough, it worked for me -- without having to change the Language for Unicode incompatible programs."
- Change your "Language for Unicode incompatible programs" to Japanese (any other language will do)
- Change this back to the original value.
It fixed the issue I had with the display of Chinese characters after a Windows update.
Brian Rothstein left a comment with such an answer.