The MUI Pack is a set of language-specific resource files that can be added to the English version of Windows 2000 and Windows XP. MUI allows the UI language of the operating system to be changed to one of many supported languages. One of the benefits of MUI is that one user can see system menus, dialog boxes, and other text in one language, while another user logging onto the same system can see the same text in a different language. A Windows system with MUI set to a particular UI language will largely look and behave like the localized version, with some exceptions. Since MUI runs on top of the English version of Windows, from a feature and architectural point of view, localized versions of Windows are the same as the MUI version on English Windows XP.
There are three principal methods (with many variations thereof) available for offering an MUI solution for your own applications. The first method is to compile one binary (with built-in resources) for each language. The second method is to have one language-neutral core binary with one multilanguage resource DLL. The last method is to have one language-neutral core binary with one set of resource DLLs-a satellite DLL-for each language. While each method has its advantages and disadvantages, the last method is generally preferred.
When offering your own MUI solution, detect the UI language of the operating system; enumerate all languages for which you have a localized satellite DLL; load the appropriate satellite DLL that matches the UI of the operating system; and allow the user to select a different language for your application, if you don't offer a localized solution for that particular language. By adding MUI capabilities to your applications, you will have completed the last step in globalizing your software.