Before I begin, let me just say that I love NSIS. I
used InstallShield for a few projects before
discovering NSIS, and it's like a breath of fresh air :-)
I'm using NSIS 2.10
The initial setting of $LANGUAGE appears to be based on
the user's selected locale, rather than the UI language.
Example:
User is primarily English-speaking, has an English
version of Windows 2000, but is working in Germany. As
a result, he has set his locale to "German (Germany)".
Under these conditions, nearly all Windows applications
show their user interface in English. However, NSIS
installers come up in German instead.
Steps to reproduce (on Windows 2000):
- Go to Control Panel/Regional Options
- Under "Your locale/location", select "German (Germany)"
- Click "OK"
- Start an NSIS installer that contains text localized
in German and English
- Observe that all text is in German
This happens for any combination of languages
(obviously), although the English/German combination is
the only one my users have reported.
Information on detecting the Windows UI language can be
found here:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/intl/nls_0xrn.asp
Please let me know if you require any further information.
Best regards,
Andrew Molyneux
Logged In: YES
user_id=584402
I'm not so sure that's the right thing to do, although your
example shows up yet another intresting case. I'm going to
open a forum thread about this to gather opnions:
http://forums.winamp.com/showthread.php?s=&threadid=228245
BTW, you can give the user the selection using LangDLL. When
using the MUI, you can use the MUI_LANGDLL_DISPLAY macro in
.onInit as instructed in the MUI readme.
Logged In: NO
Thanks for the swift response.
I've come up with a script-based workaround for this issue,
but it would be nice to have it built into NSIS (at least as
an option). I eagerly await the outcome of your survey :-)
Logged In: YES
user_id=584402
You can add some more comments in the thread, if you have
anything to add. It'd also be nice to post the custom
solution with the GetUserDefaultUILanguage call so other
users can see the difference.
Logged In: YES
user_id=1279448
Remembered to log in this time :-)
Good idea - will do.