Определение свойств и значений Wix на основе конфигурации VS active
Вопрос
Как я могу определить свойства и значения Wix, которые меняются в зависимости от того, какая конфигурация Visual Studio активна?например ,Для нашей релизной сборки var x = 1, а для экспортной сборки var x = 2.
Решение
Мы передаем свойства в WiX из файлов wixproj, используя
<DefineConstants>configuration=$(Configuration)</DefineConstants>
В разделе PropertyGroups. Затем вы можете использовать их внутри wix как $ (var.configuration)
<?if $(var.configuration) = Debug ?>
<?define x=1 ?>
<?endif ?>
В файле справки WiX есть целый раздел, посвященный препроцессору, здесь вы найдете другие вещи, которые вы можете сделать.
Другие советы
Я использую WiX 3.10, и $ (var.Configuration)
только что работал для меня.
Для этого вы можете использовать ссылочные переменные проекта.Нет необходимости указывать константы.
Примерные шаги:
- Добавьте ссылку на проект (приложения) в свой проект установки
Щелкните правой кнопкой мыши "Ссылки", "Добавить ссылки"
- Используйте ссылочные значения проекта в вашем файле wxs
$(переменная.имяпроекта.Конфигурация)
<?if $(var.ProjectName.Configuration) = Debug ?>
<?define x=1 ?>
<?endif ?>
Ресурсы: