概觀以Unicode 為基礎的平台(例如Windows XP)會模擬執行非Unicode應用程式所需要的語言環境,模擬的方式是在內部使用一般稱為系統地區設定的系統變數(或是非Unicode 應用程式的語言),將應用程式的非Unicode 文字資料轉換成Unicode。非Unicode應用程式的語言與系統地區設定所定義的語言,應該是使用相同的指令碼或指令碼系列。如果不符合這個條件,應用程式的使用者介面(UI)就會顯示成亂碼。
這種方式在使用上有一些限制:
- 只有系統管理員可以設定系統地區設定的值。
- 設定系統地區設定時必須重新啟動系統。
- 一次只能設定一個系統地區設定。
AppLocale(或Application Locale)只能暫時解決這些在以Unicode (UTF-16)為基礎的Windows XP系統中執行非Unicode 應用程式的限制。AppLocale 會偵測舊版應用程式的語言,並且模擬對應的系統地區設定,以便在字碼頁與Unicode 之間進行轉換。
重要注意事項:
- AppLocale 是以Windows XP 中所引用的最新應用程式相容性技術為基礎,因此只能安裝在這兩種作業系統中。
- 如果您經常在特定指令碼(或一組語言)中使用非Unicode 應用程式,建議您一定要將系統地區設定變數設定為目標應用程式的語言,而不要使用AppLocale。
- 應用程式的開發人員不可以將AppLocale 當作產品移轉為Unicode 的替代方式。目前,已經可以使用Microsoft Layerfor Unicode (MSLU)建立純正的Unicode 應用程式,而且也可以部署在非Unicode 的平台上(例如Windows 98)。
[
本帖最後由 jackylui 於 2010-3-24 11:51 編輯 ]