by Michael S. Kaplan, published on 2010/04/22 07:01 -04:00, original URI: http://blogs.msdn.com/b/michkap/archive/2010/04/22/10000546.aspx
So the customer question was straightforward enough:
A user is running the English version of Windows XP with the system locale set to English-US (Windows codepage 1252). This user wants to run a popular Japanese application that is code-page based. In order to run this app flawlessly in Windows XP, the user needs to set the system locale to Japanese (Windows codepage 932) and reboot the machine. Two restrictions: the user might not be an administrator to force this setting change; and/or the user might not want to force a reboot.”
You probably know the answer, right?
Now the customer was generally pleased.
Though there was a bit of feedback:
Is there any way to hide this message? I think this is going to work for us, it would be great if we could get rid of this message. /q doesn’t work either.
Uh oh.
The answer to this question is that there simply isn't a way.
AppLocale is a temporary solution for non-Unicode applications.
It's goal was not to make this temporary solution into a permanent one -- it was not to make it easy to remove the reminder that it is a temporary solution....
In the majority of cases if someone has no plans to tell the application writer to convert it to Unicode or to find some other application that is Unicode already, then one can live with the nag screen which is really pretty minor, as far as pains go.
Just a symbol, a reminder nag screen to remind one of all the problems with non using Unicode!
Euro Micelli on 22 Apr 2010 8:36 AM:
That was the customer question? Or were you paraphrasing?
Because the text is word-for-word identical to one of the scenarios described in the AppLocale site (your own link).
Michael S. Kaplan on 22 Apr 2010 8:47 AM:
Someone else was paraphrasing....or maybe possibly copying, it sounds like? :-/
Ah well, it is good to have out there anyway....
Cheong on 22 Apr 2010 10:10 PM:
Just like how "Application Compatibility" tab be added to properties page of EXE files (that exposed no programming interface for code to rely on it), it'd be nice to see AppLocale be added the same way in subsequent Windows Updates or SPs.
Given questions that can be solved by AppLocale comes to most non-English technical support forums a few times per month, it makes sense to make it standard Windows feature like .NET runtimes that can be installed from install disc, and if possible, intergrate it in shell so that Windows users can access it conveniently.
Me on 23 Apr 2010 12:38 AM:
A few months ago an application we use with applocale stopped working (closed silently on start) for users with german umlauts in their usernames after deploying a few Windows Updates to XP users. I don't know which update caused it but reinstalling applocale helped. BTW: was applocale compatibility improved with Windows 6.x through updates? http://www.mydigitallife.info/2007/05/26/workaround-to-install-microsoft-applocale-utility-in-windows-vista/
Ted on 27 Apr 2010 1:10 PM:
Any way to hide the message? Yes, just use the __COMPAT_LAYER environment variable (set it to ApplicationLocale but be careful not to wipe out any other ones that are set, i.e. append yours to the space delimited list) and then set AppLocaleID to the locale ID e.g. 0404. Then you don't even need to run your app via AppLocale.
Michael S. Kaplan on 27 Apr 2010 1:45 PM:
Wow, you learn something new EVERY day! :-)
AC on 27 Apr 2010 10:36 PM:
I cannot get that environment variable to work. Does it work on Windows 7?
Ted on 28 Apr 2010 10:01 AM:
I wrote a small blog article to describe what I originally mentioned, click on my name to see it.
referenced by