Windows 作業系統中消除漢字亂碼有絕招

 
我們在操作電腦的時候,經常會遇到漢字亂碼,例如打開“寫字板”,裏面的文字是一塌糊塗,中英文、亂碼三足鼎立;玩遊戲時功能表也一片亂碼,讓你不知所措;至於電子郵件亂碼,那就更常見了,大家可能都遇到過。為了消除這些亂碼,你可以採取下面的措施:

  一、消除Windows系統亂碼

  如果Windows註冊表中字體部分的配置不正常,就會導致系統亂碼,例如Windows桌面、功能表、對話方塊等出現亂碼,“寫字板”、中文應用軟體的介面和功能表也會亂碼。對付這類亂碼,你用內碼翻譯軟體(如南極星、MagicWin98等)是無法消除的,建議採用以下兩種方法消除:

  1、導入註冊表法

  找到一台無亂碼電腦(要求其上的Windows版本與亂碼電腦相同),在無亂碼電腦上單擊功能表“開始”/運行,鍵入REGEDIT打開註冊表;定位到關於系統字體的項目處HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFontAssoc,單擊“文件”功能表下的“導出”,導出範圍選擇“分支”(圖1),把該分支註冊表資訊導出到文件(例如LI.REG)中;

 

接下來把LI.REG文件COPY到亂碼電腦上,然後在亂碼電腦上打開註冊表,選擇“文件”/“導入”,把LI.REG文件導入註冊表中,最後重啟電腦即可。

  2、手工修復註冊表法

  如果找不到無亂碼電腦可以利用,你可以手工恢復亂碼電腦的註冊表,只需恢復字體部分註冊表項即可,操作步驟如下:

  在亂碼電腦上單擊功能表“開始”/運行,鍵入REGEDIT打開註冊表;定位到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlFontAssoc,正常情況下,會有Associated Charset、Associated DefaultFonts兩個目錄,當出現漢字亂碼時,下表兩個目錄中內容就會不完整,有的沒有Associated Charset目錄、或其中內容殘缺不全;有的Associated DefaultFonts下內容殘缺。只要你檢查下表中的兩個目錄,根據表中的正確數據恢復註冊表即可。

  Associated Charset目錄 Associated DefaultFonts目錄
中文WinXP或Win2K
下正確內容
ANSI(00)="yes"
OEM(FF)="yes"
SYMBOL(02)="no"
AssocSystemFont="simsun.ttf"
FontPackage="新宋體"
FontPackageDecorative="新宋體"
FontPackageDontcare="新宋體"
FontPackageModern="新宋體"
FontPackageRoman="新宋體"
FontPackageScript="新宋體"
FontPackageSwiss="新宋體"
中文Win98
下正確內容
ANSI(00)="yes"
GB2312(86)="yes"
DEN(FF)="yes"
SYMBOL(02)="no"
AssocSystemFont="simsun.ttf"
FontPackageDecorative="宋體"
FontPackageDontcare="宋體"
FontPackageModern="宋體"
FontPackageRoman="宋體"
FontPackageScript="宋體"
FontPackageSwiss="宋體"

二、消除應用程式(包括遊戲)亂碼

  當你運行某些中文軟體時,假如功能表等顯示介面上出現亂碼,你用上面的方法卻不能消除,那就可能是軟體的中文鏈結庫被英文鏈結庫覆蓋引起的,這類亂碼經常發生在用微軟開發工具(例如VB、VC)開發的中文軟體上。

  因為你開發的這類軟體,功能表等顯示介面上的漢字都是受一個動態鏈結庫(DLL文件)控制,這個動態鏈結庫一般安裝在WindowsSystem目錄下,如果你以後安裝了某個英文軟體也使用同名的動態鏈結庫,則英文軟體的動態鏈結庫就會覆蓋原來的中文動態鏈結庫,這樣,運行中文軟體時就會調用英文的動態鏈結庫,因此出現亂碼。解決辦法是:重新安裝一下中文軟體,恢復中文動態鏈結庫即可。

  如果以上方法也無濟於事,那就說明軟體使用的內碼與系統的語言編碼不一致,對於Win9X/ME系統,只需安裝MagicWin98(下載地址http://www.skycn.com/soft/3047.html)、南極星等內碼轉換軟體,即可消除亂碼;對於WinXP系統,建議你使用微軟多語言支援工具MicrosoftAppLocale(下載地址http://www.skycn.com/soft/12582.html),利用它為指定程式設置相應的語言區域,這樣你同時執行簡繁體、日文軟體也不會發生衝突。

  三、消除網頁上的亂碼

  如果網頁上出現亂碼,那可能是瀏覽器(如IE)對網頁語種辨認錯誤造成的。例如明明是中文網頁,IE卻選擇了“歐洲語系”編碼,因此網頁上亂碼就出現了,解決辦法是:

 

四、消除鏈結Access文件的亂碼

  由於國外的免費主頁空間容量大、而且支援ASP,於是許多朋友都使用這類主頁空間,不過國外的ASP伺服器一般不支援中文數據庫,因此假如你的網頁上有一個鏈結指向Access數據庫文件,當你點擊該鏈結打開Access文件時,文件中的中文內容就會顯示亂碼。

  為了消除這種亂碼,你可以在鏈結數據的那個文件中加入下面的句子:

  <%@ language="vbscript" codepage="936" %>

  假如還不能消除亂碼,請將你的數據庫版本改為Access97,這樣即可讓國外ASP伺服器支援中文數據庫,從而消除亂碼了。

  五、消除電子郵件亂碼

  收到對方編碼後的信件,如果你使用的EMAIL軟體(如OUTLOOK、Foxmail等)不能識別出信件所用的編碼方法,自然就無法自動解碼,這樣就會出現郵件亂碼。

  解決辦法:在Outlook2003/XP中,你可以選擇“視圖”功能表下的“編碼”,隨後出現的功能表中會有全部的漢字編碼標準,你可以選擇一種,順序單擊選擇、直到郵件正文顯示正確為止;Foxmail中,你可以點擊功能表“查看”/編碼,操作方法類似。

  如果對方使用非中文Windows,你要給他發中文郵件,希望對方能看到你寫的中文、而非亂碼,可以這樣操作:用畫筆等繪圖軟體書寫中文郵件,在圖片中輸入文字,將屬性置為黑白模式(以減少圖片體積),然後用GIF格式保存,用WINZIP把它壓縮成ZIP格式,作為附件在郵件中發送,這樣不管對方在何語言平台下,都不會出現亂碼。

This entry was posted in 未分類. Bookmark the permalink.

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s