WIX получает переменную времени выполнения от msi для преобразования другой

Я реализую установщик exe с двумя файлами msi. Во время установки первого пользователя необходимо выбрать значение из ComboBox, и я хочу использовать выбранное значение в качестве параметра для запуска преобразования на втором msi. Я использую загрузчик dotNetInstaller (без пользовательского интерфейса) и должен настроить параметры msiexec как TRANSFORMS="[переменная из первого msi]"

Я пытался использовать системную переменную, но это не сработало. Как я могу получить значение свойства ui для преобразования второго msi?


person user2992265    schedule 21.05.2014    source источник


Ответы (1)


Основываясь на вашем текущем дизайне, я бы сказал, что проще всего первый MSI сохранить свойство в значении реестра, а затем второй MSI (или преобразование второго MSI) прочитать значение реестра в свойство.

Обычно я бы попросил ваш Boostrapper/Chainer (EXE) выполнить пользовательский интерфейс, а затем передать значения дочерним пакетам.

person Christopher Painter    schedule 21.05.2014
comment
a не может прочитать свойство во втором MSI, потому что оно мне нужно перед запуском второго MSI. Мне нужно выбрать значение в переменной, на которую можно ссылаться как на параметр (например, TRANSFORMS=%any_OS_variable% или TRANSFORMS=#LANGUAGE - person user2992265; 21.05.2014
comment
Если AppSearch недостаточно скоро, пусть EXE прочитает значение реестра и передаст его второму MSI. - person Christopher Painter; 21.05.2014
comment
проблема в том, что я не знаю, как сделать какое-либо пользовательское действие из dotNetInstaller. Если я могу запустить любой cmd из своего EXE-файла, то я могу прочитать свойство из реестра или даже из файла, но я думаю, что это невозможно. - person user2992265; 21.05.2014
comment
Тогда, возможно, вам следует заменить dotNetInstaller на Burn. - person Christopher Painter; 21.05.2014
comment
Я пытался использовать запись, но у него нет возможности скрыть пользовательский интерфейс записи :( - person user2992265; 21.05.2014