WinCE中文显示乱码的解决办法(转)

      如果WinCE的默认语言是英语,也没有支持MUI的话,很多中文的应用程序就不能正常显示了,汉字全变成了方框。这里介绍一种比较简便的方法,让那些方框变回有用的汉字,象变魔术一样。:-D

     先说一下中文显示为乱码的两个原因。首先可能是应用程序本身的问题,在编写程序时没有正确配置工程和资源的语言。这时,即使在中文的WinCE系统下也不能正常显示汉字。第二种情况是应用程序本身没有问题,但WinCE是英文系统,也不支持MUI,这时汉字都变成方框。这是本“魔术”的道具。如果换做第一种,这“魔术”就失灵了。

      第二种情况,不能显示中文的根本原因是没有中文字体,所以我们只要添加进中文字体,并且注册该字体就可以了。这是本魔术的秘密所在,够Easy的吧。:-D

具体步骤如下:拷贝simsun.ttc到\windows\的目录下,在注册表中添加如下信息:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontLink\SystemLink]
      "Tahoma"="\\Windows\\simsun.ttc,NSimSun"
      "Courier New"="\\Windows\\simsun.ttc,NSimSun"
      "Arial"="\\Windows\\simsun.ttc,NSimSun"
      "Times New Roman"="\\Windows\\simsun.ttc,NSimSun"
      "Symbol"="\\Windows\\simsun.ttc,NSimSun"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\FontLink\SkipTable]
      "Tahoma"="005c,00a5,007e,0391-03c9,2026,2116,221a,25a0-25ff"
      "Arial"="005c"
      "Courier New"="005c"

 

调用函数AddFontResource(_T("\\windows\\simsun.ttc”))即可。

为了方便实现,在驱动调试助手中增加了这个功能,新程序和使用方法请到这里下载:
https://files.cnblogs.com/we-hjb/WINCEDM.rar
    使用前后的对比图如下。

CHSERR CHSOK

使用过程简要说明:拷贝simsun.ttc到\windows\的目录后,点击驱动调试助手的第一个菜单中的“Support CHS”即可。

posted @ 2009-03-17 14:45  木瓜脑袋  阅读(3948)  评论(0编辑  收藏  举报