WIX: является ли атрибут Platform элемента Package действительно устаревшим? - PullRequest
11 голосов
/ 18 апреля 2011

Если это так, как правильно указать сборку x64?

В моем файле .wxs у меня есть что-то вроде этого:

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

... где я использую -dPlatform=x64 в командной строке свечей. Это похоже на работу.

Но в документации WIX3 говорится, что и атрибут Platform, и атрибут Platforms устарели. Он не описывает, что их заменяет, или что разработчики должны использовать вместо них.

enter image description here

Когда я удаляю атрибут Platform из вышеуказанного элемента и запускаю сборку, я получаю ошибку ICE80:

Product.wxs (285): ошибка LGHT0204: ICE80: этот пакет содержит 64-битный компонент C.Textfiles, но свойство сводки шаблона не содержит Intel64 или x64.

Он успешно собирается, если я использую атрибут Platform, но из-за документации я не уверен, что это правильно.

Как правильно построить MSI x64 ??

Ответы [ 2 ]

10 голосов
/ 18 апреля 2011

Package / @ Platform не устарела - пожалуйста, откройте ошибку на SourceForge, чтобы документ мог быть исправлен. Но это не обязательно: см. http://www.joyofsetup.com/2010/05/14/working-hard-or-hardly-working/.

4 голосов
/ 18 апреля 2011

Обратитесь к документации (WiX.CHM), включенной в дистрибутив Wix, а не к документации Sourceforge - вы увидите, что значения intel и intel64 устарели. Допустимые значения: x86 , x64 и ia64

...