解決由 AppLocale 引起的 MSI 安裝程式亂碼問題

今天收到 Java SE 的更新通知,新版本為 Java 6 Update 7,這個版本在 Firefox 上的執行效能提升很多,以前在開啟有 applet 的網頁時那種「頓」很久的問題已經消失了。建議還在使用舊版本的朋友可以更新。OK,這是題外話。

話說今天我下載了新版的 Java,正要執行安裝作業的時候卻看到程式介面裡的文字全都是亂碼,看到這種扭曲變型而又無法辨識的文字實在是覺得很噁心。記得多年以前也遇過相同的問題,不過因為歷時已久,所以當時是怎麼解決這個問題早已經忘了。

msi_installation_error1
(上圖:一片亂碼的 Java 安裝程式)

經過 Google 後發現原來是 Microsoft AppLocale 所衍生出來的問題,因為這程式 bug 的關係,會導致 MSI Installer (也就是副檔名為 .msi 的安裝程式) 使用 AppLocale 上一次使用的語系執行。換句話說,我最後一次使用 AppLocale 執行了一個簡體中文程式,那麼當我現在要安裝一個繁體中文程式時,因為它會以簡體中文編碼去執行,所以程式裡的文字就變成了亂碼。

要解決這個問題很簡單,只要到 AppLocale 的資料夾,預設的安裝路徑為 C:\WINDOWS\AppPatch,把一個叫 AppLoc.tmp 的檔案刪除,再重新執行一次安裝程式,這個時候應該就正常了。如果還是顯示亂碼的話,那就重新開機後再執行一次安裝程式。

msi_installation_error2 
(上圖:刪除 AppLoc.tmp 這個罪魁禍首)

如果不想再為這個問題所苦,建議可以安裝 piaip 修改 AppLocale 後所發表的 pAppLocale,他解決了這個編碼記憶的 bug,而且還改善了程式功能,一但用 pAppLocale 建立了程式捷徑之後,每次執行程式的時候不會像 AppLocale 跳出「非 Unicode 程式」的提醒視窗。

下載 pAppLocale:請按我

3 thoughts on “解決由 AppLocale 引起的 MSI 安裝程式亂碼問題

  1. 你刪除了,下一次使用,又會再生出來,不斷重複的,解決方法,在 C:\WINDOWS\AppPatch,把 AppLoc.tmp 的檔案刪除後,再新增一個資料夾,並命名為 AppLoc.tmp 。

    這樣 WINDOWS 在系統原則不能有同名的不同類型文件共存原則下,便不會再產生 AppLoc.tmp 這個文件,以後便不會有亂碼的安裝情況發生了!

  2. 大大我用你的方法也不行哦!
    del之後不行,再重開機再試一次,也是一樣,
    還有”狂”的方法我也試過,開了個新資料夾命名了再試一次 都是一樣..
    快崩潰了都><

    1. 傻瓜解決辦法:
      再執行一次AppLocale~
      程式選擇AppLoc.exe他自己本身,然後選擇繁體語系執行即可~

發表迴響