Frankly, with multi-lingual UI support (especially multiple preference levels in Vista - see GetSystemPreferredUILanguages) you probably shouldn't do this at all. Allow any version to install on any system. Allow multiple versions to be installed side-by-side, or move to a single binary plus language packs. You might be running on a Terminal Server installed from a localized (non-US-English) CD which supports users using a different non-English UI language - I believe this is possible.
 
Michael Kaplan (GIFT team) was pretty critical when MSN Toolbar Beta did this (http://blogs.msdn.com/michkap/archive/2005/02/03/366698.aspx).
 
If you want to ensure that the UI can actually be read - that the fonts required to render it are installed - then you're asking a different question.
 
 
Actually, it looks like you're missing a space after $(var.LCID), which if WIX is simply doing a macro replacement could cause your condition to be:
 
SystemDefaultUILanguage = 1025OR SystemDefaultUILanguage <> 1033
 
which won't make any sense to Windows Installer. Try editing the MSI with Orca to see if this is what's happened.
 
--
Mike Dimmick


From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jeff MacDuff
Sent: 19 September 2006 04:42
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Problem with install condition based on lang ID

I am having trouble getting an install condition based on land ID to work… I have consulted the WIX doc’s and my implementation seems to be correct but since it’s not working I am missing something.

 

We are building a Multilanguage MSI for a small product and we wish to only allow install on the language of the MSI AND English but not a different language.

 

For example a Korean (KOR) MSI should be able to install on a Korean language OS and an English (ENU) language OS but not a German(DEU) language OS. At the same time, a DEU MSI should install on English and German (DEU) but not on a Korean (KOR ) OS ,etc… you get the idea.

 

My condition statement is formatted like this:

 

<Condition Message="You cannot install this version of because it is not compatible with your language version of Windows. Obtain the language version that matches the language version of Windows running on this PC."><![CDATA[SystemDefaultUILanguage = $(var.LCID)OR SystemDefaultUILanguage <> 1033]]></Condition>

 

 

Var.LCID is passed in as the build language and 1033 is of course English. What we are seeing is that the MSI’s can install everywhere.

 

Thanks for help,

Jeff

 

 

 

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to