Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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):

unicode unicode enter image description here

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 PanelRegion and LanguageAdministration → 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.

share|improve this question
1  
Have you attempted a System Restore to a point when it was working? – Ƭᴇcʜιᴇ007 Dec 24 '11 at 19:53
    
I did, see my update. – Felix Dombek Dec 25 '11 at 18:29
2  
Try reinstalling font. Also what is your default unicode language? – Little Helper Dec 25 '11 at 18:50
    
How do I find that out? However, as you can see in the screenshots, the error occurs with different fonts so I believe it's not a problem with the font. – Felix Dombek Dec 25 '11 at 19:37
1  
This worked for me, and, in fact, I could then change the "Language for Unicode-incompatible programs" back to "English (United States)" which is what is was before, and the fix continued to work. – Brian Rothstein Mar 8 '12 at 20:10
up vote 18 down vote accepted

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."

share|improve this answer
    
After reading through it all again, this might very well be the correct cause for my issue. Thanks for posting it here. +1. – Felix Dombek Aug 26 '12 at 15:47
    
Seems as if it really was this. Accepted. – Felix Dombek Sep 3 '12 at 4:34
    
This a) is additionally necessary / useful on Windows 8. b) Isn't 100% effective. Maybe another application that starts with Windows sometimes beats Explorer to the desktop? Can't think of any likely candidates, especially not with the shell:startup lag in Win8. – FauxFaux May 7 '13 at 7:17
2  
I just tried it and it worked a treat. Chrome is seriously broken if it prevents the entirety of Windows and all applications to fail to show Unicode correctly. ಠ_ಠ – Synetech May 25 '13 at 0:28
2  
@FelixDombek, that makes sense and is what I assumed, but even if that’s the case, it is still Chrome that is misusing/exploiting/exposing/triggering a bug in Windows since other browsers don’t cause it to happen. I suppose that can be either a good or bad thing depending on your viewpoint. – Synetech Jun 6 '13 at 14:09
  1. Change your "Language for Unicode incompatible programs" to Japanese (any other language will do)
  2. 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.

share|improve this answer
    
Didn't work for me when switching back. However, I think I know now which Windows Update is responsible. I'll post more info when I'm sure. – Felix Dombek Apr 12 '12 at 16:53
    
Any update Felix? I recently ran Windows update and am now having the same problem. And like you, changing the "Language for Unicode incompatible programs" doesn't stick when changing it back. – kiddailey Jun 10 '12 at 5:59
    
@kiddailey: The fault lies with either support.microsoft.com/kb/2545698 or support.microsoft.com/kb/2505438, I'm quite sure. Not installing those two updates has stopped the issue from recurring so far. – Felix Dombek Jun 21 '12 at 20:12

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .