WIX: is the Platform attribute of the Package elem

2019-06-15 07:59发布

问题:

If so, what is the appropriate way to specify an x64 build?

In my .wxs file, I have something like this:

<Package Description      ="$(var.pkgDescription)"
         Comments         ='Produced: Sun 17 April 2011'
         Manufacturer     ="Mfr name here"
         InstallerVersion ='200'
         Platform         ='$(var.Platform)'
         Compressed       ='yes' />

...where I use -dPlatform=x64 on the candle.exe command line. This seems to work.

But, in the WIX3 documentation, it states that both the Platform attribute and the Platforms attribute are deprecated. It does not describe what replaces them, or what developers should use in place of these.

When I remove the Platform attribute from the above element, and run the build, I get an ICE80 error:

Product.wxs(285) : error LGHT0204 : ICE80: This package contains 64 bit component 'C.Textfiles' but the Template Summary Property does not contain Intel64 or x64.

It builds successfully if I use the Platform attribute, but because of the documentation, I am unsure if this is correct.

What is the proper way to build an x64 MSI??

回答1:

Package/@Platform isn't deprecated -- please open a bug on SourceForge so the doc can be fixed. But it's not necessary: See http://www.joyofsetup.com/2010/05/14/working-hard-or-hardly-working/.



回答2:

Refer the Documentation (WiX.CHM) included with the Wix distribution rather than the Sourceforge Documentation - you'll see that the intel and intel64 values have been deprecated. Valid values are now x86, x64 and ia64