Как установить предварительно установленное программное обеспечение с помощью установщика Visual Studio?
У меня есть необходимый установщик программного обеспечения, xyz.msi, который должен быть установлен через основной установщик, pqr.msi. Я использую проект установщика Visual Studio 2015 для создания установщика pqr.msi.
Мне также нужно проверить определенное условие, например, установлен ли xyz.msi на целевой машине или нет.
Я понимаю, что я могу добавить xyz.msi как сборку в pqr installer и установить свойство ниже для условного копирования xyz.msi:
Состояние
Но, как вызвать установщик pre-requsite, чтобы сначала установить / запустить перед тем, как основной установщик молча. Это вызвало бы вложенную установку и терпит неудачу? Любой другой лучший способ?
1 ответ
Условие для копии, на которую вы ссылаетесь, является буквально условием установки файла в целевую систему, простой копией (скажем) Папки приложения. Он не установит MSI больше, чем запустит какой-нибудь exe-файл, который вы устанавливаете.
Вы также не можете установить MSI с помощью пользовательского действия (которое может быть ошибкой вложенной установки), поэтому вам нужен способ установить его перед собственным MSI. Есть два варианта, о которых я знаю:
- Генератор манифеста начальной загрузки можно использовать для создания файла setup.exe, который установит необходимый MSI, а затем MSI. Начни здесь:
https://msdn.microsoft.com/en-us/library/ms165429.aspx
- Используйте WiX для создания пакета, в котором вы помечаете обязательный MSI как обязательный для вас. Вы бы использовали MsiPackage для установки MSI.
http://wixtoolset.org/documentation/manual/v3/bundle/bundle_author_chain.html http://wixtoolset.org/documentation/manual/v3/bundle/
Обратите внимание, что вы не создаете MSI с помощью WiX, просто пакет загрузчика.
Если этот обязательный MSI от стороннего производителя, то у них могут быть альтернативные способы установки, такие как модули слияния, которые вы добавляете в свою собственную сборку MSI.