Hi David Thanks very much for your help. I agree with you that is the reason and it seems only the bootstrap can resolve it. I will try your script later.
Regards! 2010/10/21 David Amey <da...@creative-engine.co.uk> > Hi, > > I struggled with this concept a month back when I first started. > > You would want to use a bootstrapping tool (I use autoit) in order to apply > the transform to the installer, instead of having a dialog within wix. As > the transform happens at the launch of the msi. > Below is some example code that you can compile in autoit, which I have > created for this very purpose: > > ------------------------ > #cs > ---------------------------------------------------------------------------- > > AutoIt Version: 3.3.6.1 > Author: David Amey > > Script Function: > language selector utility to apply transform to msi, and add lcid > value in registry. > > #ce > ---------------------------------------------------------------------------- > > ; Script Start - Add your code below here > > #include <GUIConstantsEx.au3> > #include <WindowsConstants.au3> > > Opt('MustDeclareVars',1) > > Global $productName = "Enter a name here" > Global $install, $cancel, $lang, $selected > > languageSelector() > > Func languageSelector() > > Local $msg > GUICreate($productName,300, 110) > ;textBox > GUICtrlCreateLabel("Please select the language you would like to > install",10,10) > ;combo box > $lang = GUICtrlCreateCombo("",15,40,180) > ;the "|" character enables you to list the languages in the combo > box. the third element is the default selection for the combo box > GUICtrlSetData(-1,"English - UK|English - > US|French|Italian","English - US") > ;install button > $install = GUICtrlCreateButton("Install",180,80,50) > ;cancel button > $cancel = GUICtrlCreateButton("Cancel",240,80,50) > > GUISetState(@SW_SHOW) > > While 1 > $msg = GUIGetMsg() > > Select > Case $msg = $GUI_EVENT_CLOSE > Exit > Case $msg = $install > $selected = GUICtrlRead($lang) > lcid() > Exit > Case $msg = $cancel > Exit > EndSelect > WEnd > GUIDelete() > EndFunc > > ;translates selected language into correct lcid value which is stored in > registry (you may need as well) > Func lcid() > ;there is prob a better way to do this translation process, > Local $code > ;dont currently have en-gb.mst > If $selected = "English - UK" Then > $selected = "2057" > $code = "en-gb" > ElseIf $selected = "English - US" Then > $selected = "1033" > ElseIf $selected = "French" Then > $selected = "1036" > $code = "fr-fr" > ElseIf $selected = "Italian" Then > $selected = "1040" > $code = "it-it" > EndIf > > ;enters the lcid value in the registry. > > > RegWrite("HKEY_CURRENT_USER\Software\YourInstaller","lcid","REG_SZ",$selected) > ;--if the selected language isn’t us English then it will apply a > transform, if not, then it won't need a transform applied to it. > if $selected <> "1033" Then > RunWait('msiexec TRANSFORMS="' & @ScriptDir & > '\'&$code&'.MST" /i"' & @ScriptDir & '\YourInstaller.msi"') > Else > ShellExecute(@ScriptDir & '\YourInstaller.msi') > EndIf > > EndFunc > ------------------------------------- end of code > > Hope this helps. > > Dave > > -----Original Message----- > From: lxy.su...@gmail.com [mailto:lxy.su...@gmail.com] > Sent: 21 October 2010 10:07 > To: WiX-users@lists.sourceforge.net > Subject: [WiX-users] [Multiple- languanges support] Combox and > TRANSFORMSissues > > Hi, > I am a new commer of Wix and now I am trying to use a ComBox to support > multiple languages when displaying the installer wizard. > The value user choose can be passed to the property I set, but the issues > is that how can I change the public property -TRANSFORMS to the .mst file I > just choose? > > Is anyone have a better solution to do that? > > Thanks! > Ps, I have already embeded the mst file into the msi, and the combox > samples are as follows: > > *<**ComboBox Property="*TRANSFORMS *"**>* > > *<**ListItem Text="English" Value=":en-us.mst" />* > ** > > *<ListItem Text="Spanish" Value=":es-es.mst"** />* > > *<**ListItem Text="Japanese" Value="jp-jp.mst"** />* > > *</**ComboBox>* > ** > > <Dialog Id="LanguageChooseDialog" Height="97" Width="217" Title="Installer > Language" NoMinimize="yes"> > > *<**Control Id="LanguageChooseComboBox" Type="ComboBox" X="52" Y="48" > Width= "156" Height="10" ComboList="yes" Property="***TRANSFORMS ***" > Sorted="no" > RightToLeft="yes"**>* > > *<**Text>English</Text**>* > > *</**Control**>* > > > -- > 天行健,君子以自强不息 > > ------------------------------------------------------------------------------ > Nokia and AT&T present the 2010 Calling All Innovators-North America > contest Create new apps & games for the Nokia N8 for consumers in U.S. and > Canada > $10 million total in prizes - $4M cash, 500 devices, nearly $6M in > marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi > Store > http://p.sf.net/sfu/nokia-dev2dev_______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > ------------------------------------------------------------------------------ > Nokia and AT&T present the 2010 Calling All Innovators-North America > contest > Create new apps & games for the Nokia N8 for consumers in U.S. and Canada > $10 million total in prizes - $4M cash, 500 devices, nearly $6M in > marketing > Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store > http://p.sf.net/sfu/nokia-dev2dev > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > -- 天行健,君子以自强不息 ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users