Я хотел бы создать набор установщиков, который запускает несколько инсталляторов в цепочке. Основной пакет должен использовать конфигурационный файл, так что установщик решает, какие версии MSI должны запускаться в терминах этого конфигурационного XML. Цель состоит в том, чтобы избежать необходимости обновления каких-либо проектов WiX или Bootstrapper при выходе новой версии программного обеспечения. Вместо этого нужно было бы только обновить XML-конфигурацию, чтобы изменить то, что будет установлено внутри цепочки.WiX - Как использовать файл конфигурации, чтобы решить, какой MSI запустить?
Например, можно просто обновить исходный путь для определенного MSI внутри XML, чтобы основной установщик прочитал этот новый путь и запустил новый MSI вместо старого.
Насколько я понимаю, проблема в проекте Bootstrapper заключается в том, что все пакеты жестко закодированы, поэтому он не обеспечивает гибкость для исходного пути пакетов.
Я также пробовал использовать пользовательские действия внутри отдельных MSI. Было многообещающе, что я смог получить и установить свойства MSI с помощью C# после прочтения XML, однако эти свойства не могут использоваться как переменные для путей источника.
Я также попытался запустить второй MSI, используя пользовательские действия внутри первого MSI. Это, к сожалению, не получилось.
Я был бы признателен за любые рекомендации!
tldr, я хотел бы запустить установщиков, которые изначально не были включены в сборку. Аналогично «DownloadUrl», но из локальной сети. Его значение может быть изменено с использованием свойств, поэтому не нужно будет перестраивать проект каждый раз, когда изменяется путь.
Это, безусловно, то, о чем я до сих пор не думал. Тем не менее, это все равно потребует перестройки проекта Bootstrapper, что сделает вещи менее удобными. Также представьте, есть ли 100 версий для установщика. Для этого потребуется 100 записей в рамках проекта. Я хотел бы сохранить только один для каждого программного обеспечения и установить его соответственно в зависимости от версии, которую я хочу. – Marlyyy
Если у вас есть пакеты из MSI 100, то этот подход нецелесообразен. – bradfordrg
Если вам нужна программа lsuncher, которая читает Xml и запускает ряд установок MSI (возможно, с командной строкой, которая указывает местоположение установки), это не похоже на сложную задачу кодирования. Вам нужно больше, чем это? Или есть какая-то причина, по которой вы не можете программно изменить или построить загрузочный буткс WiX Xml и перестроить пакет? – PhilDW