You must add a torch task to the AfterBuild target in the wixproj file.
Following a description assuming you are using VS2010 English, your
solution is called MySetupProject and you want to create for an
english MSI the needed MSTs:
Solution Explorer -> Choose the Setup Project -> Right click -> Unload
Project -> Right click -> Edit MySetupProject.wixproj
Uncomment
<Target Name="AfterBuild">
</Target>
and modify it to e.g.
<Target Name="AfterBuild">
<Torch
Condition="%(CultureGroup.Identity) != 'en-US'"
ToolPath="$(WixToolPath)"
BaselineFile="$(TargetDir)en-US\$(TargetFileName)"
UpdateFile="$(TargetDir)%(CultureGroup.OutputFolder)$(TargetFileName)"
OutputFile="$(TargetDir)en-US\%(CultureGroup.Identity).mst"
AdditionalOptions="-t Language" />
</Target>
Reload project and build ...
This "undocumented" torch task is used here to build the transform(s)
(no matter how much Cultures you have set) except for the "base"
language en-US.
@Chris: For your wish Checkbox: Commenting and uncommenting is
necessary here. Thanks for your hint regarding WMIC. Use now the
functionality of ProcessExplorer to show the passed MSI parameters :-)
2011/3/18 Michael Tissington <[email protected]>:
> This looks great - where do I put this?
>
> -----Original Message-----
> From: Tobias S [mailto:[email protected]]
> Sent: 18 March 2011 09:07
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Multilanguage install
>
> <Target Name="AfterBuild">
> <Torch
> Condition="%(CultureGroup.Identity) != '$(DefaultLanguage)'"
> ToolPath="$(WixToolPath)"
> BaselineFile="$(TargetDir)$(DefaultLanguage)\$(TargetFileName)"
> UpdateFile="$(TargetDir)%(CultureGroup.OutputFolder)$(TargetFileName)"
>
> OutputFile="$(TargetDir)$(DefaultLanguage)\%(CultureGroup.Identity)$(Transfo
> rmExt)"
> AdditionalOptions="-t Language" />
> </Target>
>
> for the WiX Proj ? This generates transforms in the "DefaultLanguage"
> output folder.
>
>
>
> 2011/3/17 Christopher Painter <[email protected]>:
>> Oh I already know how it works and can get it to work. :-) I was
>> just wondering if there was a better way to generate the transforms
>> then post build events that call torch. Votive has some nice msbuild
>> support for encapsulating
>>
>> the underlying calls to the wix tools I just wish it has a little
>> checkbox next
>>
>> to cultures to build ( generate language transforms ).
>>
>> BTW, you don't need a "man in the middle" to sniff out the command
>> line, you can use wmic ( windows management instrumentation console )
> to do that.
>>
>>
>> ---
>> Christopher Painter, Author of Deployment Engineering Blog Have a hot
>> tip, know a secret or read a really good thread that deserves
>> attention? E-Mail Me
>>
>>
>>
>> ----- Original Message ----
>> From: Tobias S <[email protected]>
>> To: General discussion for Windows Installer XML toolset.
>> <[email protected]>
>> Sent: Thu, March 17, 2011 4:52:53 PM
>> Subject: Re: [WiX-users] Multilanguage install
>>
>> @Chris: Am I understanding you right ? You want to apply a transform
>> for the "base" language, e.g. english MSI + english MST + spanish MST
>> ? For InstallShield as they build by default a transform for the
>> default language ? If yes did you check with a "man in the middle
>> tool" (custom msiexec.exe in directory of setup.exe which shows its
>> calling command line) what the installshield setup.exe calls in case
>> of the default Language ? (esp. if they already apply a transform or
>> not ?) Not sure right now whether this works or not but I can check if
>> Andreas Kerl wrote something in his book about this and the abilities
>> of torch here.
>>
>> As a sample if you want e.g. 8 transforms you only need 2 MSIs in
>> different languages and then can create an XML diff and modify this
>> for the other 6 languages and from these generate the transforms
>> again. This might reduce build time as not building the MSIs just for
>> transform generation is needed.
>>
>>
>>
>> 2011/3/17 Tobias S <[email protected]>:
>>> Francisco,
>>>
>>> When you get it working with the transform msiexec /i installer.msi
>>> TRANSFORMS=":1034". (I'm wondering about the ":1034" - should be e.g.
>>> 1034.mst???) this means it is working with your produced spanish
>>> transform applied to the english one. So when going back to
>>> InstallSite your problems can result in problems in step 3. or 4. .
>>>
>>> In general and why I don't like this approach very much: you must
>>> rely on the way here this undocumented feature retrieves the current
>>> OS language. If something goes wrong here it is difficult to track
>>> down the real issue. So did you try the package on several spanish
>>> systems ?
>>>
>>> Btw: Spanish if I remember right this is the OS where the LCID is
>>>1034 and additionally other LCIDs exist. Maybe that causes problems
>>>in detecting a spanish OS with these embedded transforms. Read
>>>http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/LCIDs-of
>>>-the-supported-languages-of-WixUIExtension-tp5910168p5910168.html
>>>l
>>> So maybe use some other language first to track down the problem and
>>>set the OS language as described in InstallSite.
>>>
>>> I'd recommend you to use e.g. German and 1031 for your testing.
>>> Please do exactly following:
>>> 1. Build the MSI + transform
>>> 2. test it with msiexec /i setup.msi TRANSFORMS=1031.mst
>>>
>>> If working
>>> 3. embed the transform with
>>> wisubstg.vbs Setup.msi 1031.mst 1031
>>>
>>> 4. ORCA: View -> Summary Information... -> there change Languages to
>>> "1033,1031" (without quotes and without empty spaces between the
>>> numbers) and save the
>>> package afterwards)
>>>
>>> Change the computer language of the system to German (Gerrmany) as
>>> described on InstallSite. If still not working: Interesting is the
>>> output of step 3. Please post it here. Be aware that you work exactly
>>> on the generated packages and no dirty ones where possibly something
>>> went wrong...
>>>
>>> Regarding Arabic: Think of only localize text and not "RTL" the UIs.
>>> One of our arabic speaking guys told me that these people are used of
>>> not well RTL modified UIs. If you still want to do so: Get an
>>> installShield demo (they offer well RTL layout, think only the
>>> graphic on the start dlg and finish dialog is turned) and modify the
>>> WiX dialogs in WiX sources folder src\ext\UIExtension\wixlib (approx
>>> 25 -
>>> 30 dialogs and User Interface "sequences"). Think it should be
>>> possible here as well to embed a transform for the modifications even
>>> here this transform then contains a completely modified UI. But as
>>> never done also expect some issues when transforming with a torch
>>> generated transform for arabic (not sure whether -t Language is
>>> enough).
>>>
>>> As already stated think of using a bootstrapper for the language
>>> transform application (e.g. dotnetinstaller) instead of the embedded
>>> approach.
>>>
>>> regards
>>> Tobias
>>>
>>>
>>> 2011/3/17 Francisco Gabriel Malbrán <[email protected]>:
>>>> Thanks Michael. I've tried your solution as well but still no results.
>>>>
>>>> Can any body please attach an empty/demo version of your
>>>> multilanguage msi to test it out in my computer? This way I would be
>>>> able to detect if the problem is in the procedure or in the environment.
>>>>
>>>> Thanks in advance
>>>>
>>>> Francisco
>>>>
>>>> 2011/3/17 Michael Tissington <[email protected]>
>>>>
>>>>> out
>>>>> "$(ProjectDir)$(OutDir)1040.mst"
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Francisco Gabriel Malbrán
>>>> Licenciado en Ciencias de la Computación Online CV:
>>>> www.linkedin.com/in/franciscomalbran
>>>>
>> ----------------------------------------------------------------------
>> --------
>>>> Colocation vs. Managed Hosting
>>>> A question and answer guide to determining the best fit for your
>>>> organization - today and in the future.
>>>> http://p.sf.net/sfu/internap-sfd2d
>>>> _______________________________________________
>>>> WiX-users mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>>>
>>>
>>
>> ----------------------------------------------------------------------
>> --------
>> Colocation vs. Managed Hosting
>> A question and answer guide to determining the best fit for your
>> organization - today and in the future.
>> http://p.sf.net/sfu/internap-sfd2d
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>>
>>
>> ----------------------------------------------------------------------
>> --------
>> Colocation vs. Managed Hosting
>> A question and answer guide to determining the best fit for your
>> organization - today and in the future.
>> http://p.sf.net/sfu/internap-sfd2d
>> _______________________________________________
>> WiX-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>
> ----------------------------------------------------------------------------
> --
> Colocation vs. Managed Hosting
> A question and answer guide to determining the best fit for your
> organization - today and in the future.
> http://p.sf.net/sfu/internap-sfd2d
> _______________________________________________
> WiX-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ------------------------------------------------------------------------------
> Colocation vs. Managed Hosting
> A question and answer guide to determining the best fit
> for your organization - today and in the future.
> http://p.sf.net/sfu/internap-sfd2d
> _______________________________________________
> WiX-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
WiX-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wix-users