WIX Изменить имя продукта и установить каталог из параметров командной строки
Я столкнулся с типичным сценарием, где требуется изменить название продукта, как указано в параметрах командной строки, как показано ниже
MSBuild.exe ApplicationSetup.wixproj /p:AssemblyTitle=%USER_SPECIFIED_NAME% /p:ProductVersion=%VERSION% /p:ProductCode=%PRODUCT_CODE% /p:UpgradeCode=%UPGRADE_CODE% /t:Clean;Rebuild"
Я использую эти параметры в файле.wxi. как показано ниже:
<Product Id="$(var.ProductCode)" Name="$(var.AssemblyTitle)" Language="4"
Version="$(var.BuildVersion)"
Manufacturer="!(loc.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
Этот код успешно компилируется. Но название продукта в программе добавления / удаления отображается неправильно. Я прочитал, что название продукта не может быть предоставлено напрямую, оно должно быть жестко запрограммировано. Пожалуйста, сообщите об этом.
Другим типичным требованием является установка на компьютере нескольких версий одного и того же продукта. Я несколько добился этого, выполнив следующие изменения в теге продукта в файле.wxi
<Product Id="*" Name="$(var.AssemblyTitle)" Language="4"
Version="$(var.BuildVersion)"
Manufacturer="!(loc.Manufacturer)" UpgradeCode="$(var.UpgradeCode)">
Теперь возникает проблема, что вторая установка перезапишет файл, сгенерированный во время первой установки. Поэтому требуется динамически изменять каталог установки.
Я опубликовал это после нескольких дней борьбы и перепробовал много решений, но все тщетно. Любая помощь будет высоко оценена.