Как MSI может запросить у пользователя параметры для настройки MSM? - PullRequest
2 голосов
/ 18 ноября 2009

У меня есть приложение BACK , которое упаковано в модуль слияния и установлено с другим приложением FRONT , которое находится в основном пакете MSI. Они создаются с помощью проектов в MS VisStudio 2008.

Пользователь может настроить приложение FRONT через пользовательский интерфейс MSI с небольшим набором параметров. Мне нужно получить доступ как минимум к одному из этих параметров (в данном случае к URL), чтобы во время выполнения BACK мог получить доступ к FRONT .

  • В MS Visual Studio я не могу просмотреть пользовательский интерфейс для проекта MSM, чтобы предложить пользователю.
  • Параметры, установленные в пользовательском интерфейсе MSI, по-видимому, не передаются в MSM - класс в MSM (происходит от System.Configuration.Install.Installer ), но его Установка Функция вызывается с пустым IDictionary .

Я искал Google, MSDN, SO и другие, но даже не нашел никого (используя VisStudio) с этим вопросом. Похоже, что в MSDN много информации об абстракциях, без ссылок на какие-либо инструменты, поэтому я думаю, что она предназначена для разработчиков tools , а не для пакетов установки.

1 Ответ

2 голосов
/ 21 сентября 2011

Для этого вы можете использовать свойства установщика . MSI может получить доступ к свойству MSM, используя этот синтаксис:

<property name>.<module GUID>

Таким образом, если вы используете пользовательское свойство в своем MSM, например MY_URL, вы можете установить его из своего MSI с помощью:

MY_URL.{B5C20B75-2B3F-4323-9584-C426E8AEE3BF}

где "{B5C20B75-2B3F-4323-9584-C426E8AEE3BF}" представляет GUID модуля объединения.

...