2009-10-21 2 views
3

Я использую heat.exe для генерации списка файлов, мне нужно заменить File/@ Source = "SourceDir" , поэтому я передаю имя -var и имя каталога, но эти переменные определены в моем .wxi file Как включить файл .wxi в файл сгенерированный теплом wxs. так как этот файл будет генерироваться каждый раз, когда я создам сборку.Wix, Heat и Wxi File

+0

Я думаю, что я нашел еще один вариант решения этой проблемы. Используйте -var и используйте то же самое в командной строке свечи. – Avinash

ответ

1

Зачем стоит использовать SourceDir?

Вы можете просто передать дополнительные базовые папки для освещения с помощью переключателя -b и для всех ссылок SourceDir, WiX будет искать в указанных вами базовых папках. Легко перемещать вещи между машинами и обновлять параметр в вашей системе сборки, а не редактировать файл include.

1

Обновление для wix 3.7, когда вы используете задачу HeatDirectory в своем wixproj вместо запуска heat.exe, вы можете PreprocessorVariable установить SourceDir.

<Target Name="BeforeBuild"> 
<HeatDirectory Directory="..\distribution" 
       PreprocessorVariable="myVar" <--- your variable name 
       OutputFile="HeatGeneratedFileList.wxs" 
       ComponentGroupName="HeatGenerated" 
       DirectoryRefId="INSTALLFOLDER" 
       AutogenerateGuids="true" 
       ToolPath="$(WixToolPath)" 
       SuppressFragments="true" 
       SuppressRegistry="true"/> 
</Target> 

Подробнее:

http://wix.sourceforge.net/manual-wix3/msbuild_task_reference_heatdirectory.htm

WIX HeatDirectory Task - Setting the preprocessorVariable

Смежные вопросы