Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Binding of MBApreq language + UserLanguageID to "currentCulture" instead of "currentUiCultureInfo" #4499

Closed
wixbot opened this issue Aug 12, 2014 · 7 comments
Milestone

Comments

@wixbot
Copy link

wixbot commented Aug 12, 2014

When testing a Bootstrapper on an W7 EN with installed language packs we figured out that UserLanguageID + the language in which the MBApreqInstaller occurs are set to "CurrentCulture" ( http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.currentculture.aspx). So here the value / the shown MBAPrep UI language changes when changing the Format (Date and Time) but not the Display Language ("CurrentUICulture").

Normally CurrentUICulture = CurrentCulture but in our case not... IMHO binding to CurrentUICulture seems to make more sense here.

The MBApreq UI language selection was set already to CurrentUICulture in WiX 3.6 but seemed to change in the meanwhile...

Originally opened by tobias

@wixbot
Copy link
Author

wixbot commented Aug 14, 2014

Burn uses the user language (via GetUserDefaultLangID) and falls back to system language (via GetSystemDefaultUILanguage). This is the best way we came up with to continue to support XP and Server 2003. I'll open this bug in v3.x series to see if we can come up with a better way, perhaps using the loc support in Vista and later to better choose user language(s).

Release changed from v3.9 to v3.x

@wixbot
Copy link
Author

wixbot commented Oct 6, 2014

Doing a lot of binging, it appears that .Net sets CurrentCulture (possibly using GetUserDefaultLangID) and CurrentUICulture (possibly using GetSystemDefaultLangID, which is elsewhere described as "the
'Language for non-Unicode programs' option, not the localized language of
the installed OS."). The reason seems to be that the setting was a system-wide setting, then became a per-user setting later on, but the API's name wasn't changed to reflect that.

Originally posted by bmurri

@wixbot
Copy link
Author

wixbot commented Oct 7, 2014

I believe I found the correct API to use: GetUserDefaultUILanguage (see http://web.archive.org/web/20130701052031/http://blogs.msdn.com/b/michkap/archive/2005/02/01/364707.aspx) which already does the fallback across system setting/install OS value.

Originally posted by bmurri

@wixbot
Copy link
Author

wixbot commented Oct 7, 2014

See the table on this page

Originally posted by bmurri

@wixbot
Copy link
Author

wixbot commented Oct 7, 2014

Originally changed by bmurri
AssignedTo set to wixsupport

@wixbot
Copy link
Author

wixbot commented Jun 9, 2015

Pull request in wix4 and wix3

Originally posted by bmurri

@wixbot
Copy link
Author

wixbot commented Nov 16, 2015

Updated pull request links: wix3 and wix4

Originally posted by bmurri

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants