WiX включает против фрагментов - PullRequest
33 голосов
/ 24 февраля 2009
  • В чем разница между включением WiX (файл .wxi) и фрагментом WiX (файл .wxs)?
  • Каковы варианты использования для каждого?
  • Какой следует использовать и почему?

Ответы [ 3 ]

20 голосов
/ 24 февраля 2009

Расширение файла - это удобство, содержание файла - это то, что действительно имеет значение. Различие облегчает управление разницей между фактической установкой (файлы wxs) и свойствами, необходимыми для создания установки (файлы wxi).

Например, ваши файлы wxs определяют продукт и его содержимое (какие файлы вы устанавливаете), тогда как вы будете использовать файлы wxi для указания версии продукта, кодов обновления, общих путей и т. Д.

Документация по WiX содержит некоторую ясную информацию.

19 голосов
/ 31 июля 2009

Лично я использую только файлы .wxi для включения общих <?define?> s. Я организую оставшуюся часть моего продукта в различные логические группы фрагментов. Относитесь к фрагментам как к функциям на вашем типичном процедурном языке. Группируйте вещи вместе и не делайте их слишком длинными.

0 голосов
/ 08 марта 2011

Следует помнить, что добавление файла wxs в ваш проект подразумевает, что MSBuild будет выполнять инкрементную сборку при обновлении файла wxs. Включение файла wxi не делает этого.

Но, с другой стороны, MSBuild не выполняет автоматическую сборку, когда какой-либо из файлов, которые вы включаете в msi, был обновлен, поэтому вы, вероятно, в любом случае не будете делать инкрементную сборку.

...