Подтвердить что ты не робот

Можно ли/интуитивно обернуть инсталлятор Inno Setup внутри MSI для упрощения распространения через AD?

Наш установщик написан с помощью Inno Setup, и мы на самом деле очень довольны этим. Тем не менее, некоторые клиенты продолжают запрашивать установщик MSI, который они могли бы более легко распространять через Active Directory. Мы уже пошли на несколько шагов, чтобы сделать установщик действительно /LOADINF с автоматическими и автоматическими установками, расширив Inno Setup /LOADINF -mechanism с помощью наших собственных опций.

Чтобы удовлетворить запросы клиентов MSI, я думал о том, чтобы просто обернуть наш обычный установщик внутри MSI, возможно, созданный с помощью WIX. Вопрос в следующем: могу ли я поддерживать высокую конфигурацию, которую предлагает наш нынешний установщик? Как я могу разоблачить параметры установщика Inno Setup через внешний MSI в сценарии автоматической или массовой установки?

Заметьте, что я до сих пор не дошел до того, что я действительно начал копаться в MSI-создании и сам WIX. Сейчас меня интересует только то, знают ли люди, которые знают, о чем они говорят, что это был бы разумный подход, чтобы в первую очередь инвестировать нашу энергию...

[EDIT:] Первоначально я думал, что могу сделать это с использованием метода временного извлечения и выполнения, т.е. MSI просто будет служить судном для доставки инсталлятора Inno на целевой компьютер и выполнения его там в /VERYSILENT -mode. Но я думаю, что клиенты, которые просят MSI, также хотят удалить или даже изменить установку из центрального местоположения, и я думаю, что это будет невозможно в этом сценарии, не так ли?

PS: У нас также есть старая копия WISE для MSI, но этот опыт был на самом деле причиной того, что мы начали использовать Inno вместо этого, чтобы начать с...

4b9b3361

Ответ 1

Нет, нет способа сделать это, сохраняя при этом все функции, которые ваши клиенты "неявно" запрашивают. Единственная "упаковка" в MSI, которую вы можете сделать, это извлечь ее при установке и запустить установщик InnoSetup из временного места, где вы извлекли. MSI - принципиально другой способ работы: InnoSetup (и NSIS и большинство других инсталляторов) используют подход, ориентированный на код: вы "программируете" шаги для установки своих данных. MSI - это база данных и использует "ориентированный на данные" подход: вы указываете, какие файлы должны быть установлены, а остальная среда MSI "runtime". Это дает вам управление версиями и точное управление тем, что происходит.

Короче говоря, чтобы предоставить вашим клиентам то, что они хотят (то есть, простота развертывания, которые MSI приносит с AD), вам понадобятся "правильные" MSI. Удачи вам в этом, это большая боль ИМХО. Но это дает хорошие результаты, как только вы освоите MSI и WiX.

Ответ 2

У меня была эта проблема много раз сама. Поэтому я создал стандартный способ решения этой проблемы, и в результате появился мастер, который проведет вас через этапы. Инструмент будет поддерживать следующее:

  • Оберните exe в MSI.
  • Поддержка удаления.
  • Показывать только одну программу в "Установка и удаление программ".
  • Разрешить передачу параметров командной строки, таких как /SILENT, во встроенную настройку при запуске пакета MSI с помощью MSIEXEC.EXE.

Вы можете получить его на http://www.exemsi.com (основная версия бесплатна)

Используйте мою контактную форму и дайте мне знать, что вы думаете: -)

Ответ 3

В ответ на ваше редактирование: да, то, что вы описали, будет препятствовать выполнению обновлений (кроме удаления/переустановки) и удаленной конфигурации, поскольку база данных MSI ничего не знает о содержимом вашего установщика.

Многие пакеты установщиков начали поддержку MSI таким образом, хотя: например, InstallShield. Это основная причина, по которой я их бросил, потому что установщики, созданные таким образом, бесполезны для целей MSI. Я не знаю, улучшены ли последние версии InstallShield, последний раз, когда я проверил, было 5 лет назад.

Ответ 4

Его довольно легко сделать набор оберток, который автоматически устанавливает INNOSETUPper из MSI. Для базовых функций (установка/удаление) этого достаточно. Большинство настройщиков вообще не выполняют ремонт.

  • создать silent.inf script для INNO Setup (необязательно)

  • создать install.bat, который вызывает

    myinnosetup.exe/silent/NOCANCEL/norestart/Components = "xxx"

    вы можете использовать /verysilent
     вы можете загрузить настройки из silent.inf с помощью /LOADINF = "silent.inf"

  • создайте файл установки MSI, который вызывает install.bat(при необходимости, с параметрами)

  • доставить все 4 файла вашему клиенту, и они могут развернуть ваш Inno setupper с помощью SMS или ActiveDirectory, и все будут рады:)

Ответ 5

Я бы сказал, что можно сделать все, что вы хотели бы, с помощью MSI, завернутой Inno Setup, но это далеко не тривиально, и использование WiX может затруднить эту задачу. Короче говоря, я бы не рекомендовал его.

Но если вы действительно хотели бы...

Файлы MSI - это просто файлы базы данных с дополнительными инструкциями script и часто вставляйте .cab файл, содержащий материалы, которые вы действительно хотите установить.

Если вы используете Wise, вы будете генерировать сценарии по умолчанию, которые затем можете добавить условия установщика Windows и более точно контролировать события (устанавливать, восстанавливать, изменять, удалять), чтобы они вызывали эквивалентные действия в вашей установке Inno Setup script, который необходимо будет установить и сохранить во временной папке.

Ответ 6

Это не имеет никакого смысла в отношении технологий установки.

Если вы смешиваете, вы получаете первую проблему с деинсталляцией. без изменений вы получаете 2 деинсталлятора вашей программы.

есть несколько статей, начинающихся с установщика Windows в журнале "entwickler"

  • Entwickler Magazin (Ausgabe: 03.09/15.04.2009) Artikel: MSI-Pakete mit Open-Souce-Software erzeugen Teil 4
  • Entwickler Magazin (Ausgabe: 02.09/12.02.2009) Artikel: MSI-Pakete mit Open-Souce-Software erzeugen Teil 3
  • Entwickler Magazin (Ausgabe: 01.09/10.12.2008) Artikel: MSI-Pakete mit Open-Souce-Software erzeugen Teil 2
  • Entwickler Magazin (Ausgabe: 06.08/15.10.2008) Artikel: MSI-Pakete mit Open-Souce-Software erzeugen

http://entwickler-magazin.de/

Установщик окон должен быть единственной технологией для ваших установок. его будущее доказательство и его стабильность!

Ответ 7

Обтекание Inno Setup в пакете MSI не является тривиальной задачей. Однако это возможно. Существует множество бесплатных инструментов, которые можно использовать для этого. Вы должны выбрать тот, который также поддерживает удаление и обновления.

Я нашел только один бесплатный инструмент, который поддерживает обновления и удаление. Проверьте http://www.exemsi.com/inno-setup-and-msi

Ответ 8

Это будет в значительной степени эквивалентно доставке ZIP файла и вызову unzip к концу установки.

При таком подходе AD и установщик Windows будут обмануты, как если бы они имели дело с надлежащей установкой MSI, но, как это не совсем так, они в первый раз обрушились на вас.

Не идите таким образом.

И WiX - превосходный набор инструментов для InnoSetup, так или иначе, поэтому время, которое вы потратите на обучение и портирование, окупится благодаря лучшей поддержке сотрудничества.

Ответ 9

хотя последний комментарий является выполнимым и работоспособным, переход на MSI - лучший способ справиться с этим.

почти все крупные организации предусматривают только MSI, существует множество причин.

1) сначала легкость развертывания 2) более важным для некоторых является коммуникабельность приложений 3) самовосстановление

inno setup и другие подобные инструменты, не внедряющие Windows Installer, просто не могут предлагать общительность приложения так же, как и установщик Windows.

вам нужно понять, что Inno setup - это программное обеспечение, предназначенное для развертывания одного приложения.

Установщик Windows - это целая структура для решения вопросов, связанных с коммуникабельностью, олицетворением пользователей, повышением уровня пользователя, самовосстановлением, настройкой профиля пользователя.

Они двое даже не удалены по функциональности, но интуитивная настройка в моем сознании полностью и совершенно не согласуется с тем, как сравнивать с установщиком Windows.

Можно ли создать успешных установщиков? да Легко ли использовать? да Создает ли он хороших инсталляторов? да Это лучший выбор для предприятия? нет

Самые ранние инструменты, разработанные Microsoft "Установщик SMS", были несовместимы 10 лет назад. Вещи сильно изменились в мире установки, а интро-настройка просто не соответствовала темпам этих изменений.

Ответ 10

Мне нужно ввести значение custome на silent.inf(не установленное значение настройки настройки inno). Доцент выглядит так, как это делает LOADINF.

Примечание. Если вы используете makemsi, вам не нужно включать летучую мышь, как вы можете использовать $WrapInstall.