AppLocale is a Microsoft tool for Windows that allows non-Unicode programs to be run in a specified locale on a per-program basis. This is useful for users of older non-English software in English-language Windows installs.
Much internationalised modern software allows for the display of a variety of different writing systems in a seamless fashion. This makes use of "character sets" that describe how an application should display certain characters. Modern software will often use the "Unicode" character set, which aims to support all feasible writing systems.
Unfortunately, much older software does not use the Unicode character set, and instead rely on local character sets. The result of this is that when older non-Unicode applications are run on English-language Windows systems, the fonts are unlikely to be displayed correctly.
In order to allow such software to run effectively, Microsoft Windows allows a user to set their system to always choose a given default language for non-Unicode applications. Unfortunately, there is no way in Windows to choose languages on a per-application basis. On systems that may run a variety of programs under different languages, this is an unsatisfactory approach. Setting the system-wide language may also conflict with older English-language software, which will appear in the new language. (Driver software, installed alongside sound cards or webcams, is particularly prone to this problem.)
In response to this, Microsoft released the "AppLocale" tool. This allows individual programs to be run, or installed, under a user-selected language. The AppLocale software, along with an explanation of its use, is available here: http://www.microsoft.com/globaldev/tools/apploc.mspx
One limitation of the AppLocale approach is that it is designed by Microsoft to be a temporary solution. The solutions preferred by Microsoft are either for the software to be re-written to use Unicode, which is infeasible for ordinary users, or for the system-wide default language to be set to an application's language. This second option, as discussed above, is unsatisfactory.
Unfortunately, in order to remind users of this temporary nature, Microsoft have written AppLocale to pop up a warning dialogue box every time it is run. Whilst not critical, this is an annoyance for running common programs. As such, a (non-Microsoft) patch has been released to remove this warning. The patch, along with installation instructions, can be downloaded here: http://opcode0x90.wordpress.com/2008/01/09/patch-for-applocale/