篩選 MUI 主控台應用程式中的語言

MUI 主控台應用程式可以支援其使用者介面語言的系統設定或應用程式特定設定。 本主題討論此類型的應用程式語言篩選。

限制語言顯示

不同于圖形視窗,Windows主控台無法顯示複雜的腳本,例如阿拉伯文、希伯來文、阿拉伯文、希伯來文、印度文、泰文等等。 因此,主控台在任何情況下都無法顯示許多使用者介面語言。

主控台只能顯示與非 Unicode 應用程式目前語言相關聯的單一 OEM 字碼頁 字元。 針對每個 OEM 字碼頁,主控台會使用特定字型,但這可能不會提供該字碼頁的完整涵蓋範圍。

這些與主控台相關的限制可減少主控台可在特定電腦上顯示的使用者介面語言數目。 例如,如果非 Unicode 應用程式的目前語言是日文,而且使用者嘗試在主控台中顯示德文文字,則具有 umlauts 的字元不會正確顯示。 如果非 Unicode 應用程式的目前語言是德文,而且使用者想要在主控台中顯示日文文字,結果會更糟,轉譯文字幾乎難以理解。

注意

為 MUI 應用程式提供主控台支援時,請記住,主控台僅提供 對輸入法編輯器的有限支援。

 

設定主控台輸出的語言

在 Windows Vista 和更新版本上,主控台應用程式會呼叫SetThreadPreferredUILanguages來設定語言以支援主控台顯示。 在此呼叫中,應用程式會將MUI_CONSOLE_FILTER傳遞給 pwszLanguagesBufferdwFlags參數和Null。 替代方法是使用語言識別項為 0 呼叫 SetThreadUILanguage 。 此設定會導致函式選取最能支援主控台顯示的語言。

在 Windows XP 上,應用程式只能呼叫語言識別項為 0 的SetThreadUILanguage來設定主控台輸出的語言。

設定應用程式語言喜好設定