Wix — как обрабатывать ссылки на проект при использовании тепловой мощности со свечой?

Я пытаюсь использовать тепло в веб-файле .csproj, а затем использовать свечу на выходе. До сих пор я сделал:

heat project "StatusReport Web.csproj" -pog:Binaries pog:Content -ag -out StatusReport.wxs

А потом:

candle StatusReport.wxs

Однако на последнем я получаю:

Error CNDL0150: Undefined preprocessor variable '$(var.StatusReport Web.TargetDir)'.

Что я делаю не так?

Кроме того, есть ли способ использовать тепловыделение в проекте Visual Studio Wix?


person David Hodgson    schedule 20.11.2009    source источник
comment
Это не поможет, но я нашел документацию WiX в лучшем случае плохой.   -  person Plip    schedule 24.11.2009


Ответы (2)


Файл wxs, созданный heat.exe, содержит переменную препроцессора $(var.StatusReport Web.TargetDir). Вы должны передать значение этой переменной в Candle.exe. Он должен быть установлен в выходную папку Visual Studio ваших двоичных файлов.

Вы можете передать значение этой переменной в candle.exe следующим образом:

candle.exe -dStatusReport.Web.TargetDir=c:\myproject\bin StatusReport.wxs

В качестве альтернативы вы можете просто отредактировать StatusReport.wxs и заменить переменную на значение, которое она должна иметь.

person Wim Coenen    schedule 27.11.2009
comment
При этом обратите внимание, что переменная в Тепловая мощность содержит переменную var. на старте. Вы не указываете вар. как часть определения -d. Это смутило меня примерно на 5 минут, прежде чем я понял это. - person ghostJago; 25.08.2011

Ответ на второй вопрос прост, просто добавьте существующий элемент и укажите на выходной файл Heat, поэтому я думаю, что первый вопрос не имеет значения.

Было бы здорово, если бы тепло могло справиться с зависимостями проекта за вас.

person David Hodgson    schedule 24.11.2009