User Interface Language Management

For user interface language management, MUI uses several specific functions. These functions are exposed through the MUI API to allow your applications to query user interface language-related information from Windows, for example, number of installed languages and user interface language for current user. Functions are also included that allow control of the user interface language per application thread. For information about calling the user interface language management functions in an MUI application, see Representing the Correct Language to the User.

On Windows Vista, MUI introduces the following functions that allow applications to take precise control of user interface language decisions:

  • SetThreadPreferredUILanguages sets the thread preferred UI languages. This function uses the full power of the Windows Vista resource loader.
  • The enhanced SetThreadUILanguage function behaves similarly to SetThreadPreferredUILanguages, with limitations described in the function reference. For example, an application can call this function to have the resource loader use Japanese-language resources when available. When Japanese-language resources are not available, the resource loader falls back to the user and system preferred UI languages.
  • The GetThreadPreferredUILanguages, GetSystemPreferredUILanguages, and GetUserPreferredUILanguages functions allow applications to examine information about preferences and fallback languages of partially localized languages. For information about partially localized languages, see Partial Localization.
  • GetUILanguageInfo retrieves a variety of information about a particular user interface language.

Several MUI functions predate Windows Vista. One of these functions is EnumUILanguages, used to determine the installed user interface languages. The functions SetThreadUILanguage, GetUserDefaultUILanguage, and GetSystemDefaultUILanguage are used to determine the various languages of the operating system user interface.

About Multilingual User Interface, Multilingual User Interface Reference, Representing the Correct Language to the User