Какой продукт установки использовать? InstallShield, WiX, Мудрый, Усовершенствованный Установщик, и т.д. [закрытый]

Я не думаю, что это столь же просто, как "-" по сравнению с, "имеет -" - как cletus сказал, строка может стать очень расплывчатой. Это не похоже на двух человек, всегда приходил бы к тому же заключению, данному просто что как инструкция.

Также, поскольку cletus сказал, предпочтите состав по наследованию. По моему мнению должны быть действительно серьезные основания произойти из базового класса - и, в частности, базовый класс действительно должен быть , разработал для наследования, и действительно для вида специализации Вы хотите подать заявку.

Кроме того - и это, вероятно, будет непопулярной идеей - она снижается для дегустации и инстинктивное чувство. Со временем я думаю, что хорошие разработчики получают лучший смысл того, когда наследование будет работать и когда оно не будет, но им может быть трудно выразить ясно. Я знаю , мне трудно, как демонстрирует этот ответ. Возможно, я просто проектирую трудность на других людей хотя:)

56
задан Peter Mortensen 10 August 2015 в 22:03
поделиться

4 ответа

UPDATE, Август 2018 г. , новый и более короткий вариант: Как создать установщик Windows . Сосредоточено на обобщении MSI и его основных преимуществах и на перечислении основных доступных инструментов (со ссылками для скачивания), как org - довольно исчерпывающий список инструментов). Я также использовал менее распространенные инструменты для упаковки и развертывания, такие как Computer Associates Unicenter, которые, вероятно, уже не продаются. Также есть страница на Инструменты разработки, не относящиеся к MSI .

ОБНОВЛЕНИЕ : если вам нужен инструмент MSI для сравнения двух версий файлов MSI или просто для извлечения информации из файла MSI, вы можете прочитать этот ответ: Как я могу сравнить содержимое двух (или более) файлов MSI? (сосредоточено на бесплатных инструментах MSI).

В этом сообщении представлен обзор сильные стороны некоторых различных инструментов разработки , а также некоторые препятствия, о которых следует помнить . При всей своей схожести эти инструменты на самом деле совершенно разные. Были предприняты все попытки сделать описания как можно более объективными - описать реальный опыт с положительными и отрицательными сторонами.


Связанные темы развертывания

  • Прежде чем углубляться в обзор различных инструментов, вот еще несколько ссылок с информацией о самой технологии MSI.
  • Вот общее описание задач развертывания , обычно поддерживаемых в инструментах развертывания, и описание того, почему развертывание кажется все более сложным.
  • Многие люди, кажется, думают MSI - это больше проблем, чем того стоит, и иногда это можно понять. Преимущества реальны - особенно для корпоративного развертывания, но есть и некоторые проблемы.


    Связанные темы развертывания

    • Прежде чем углубляться в обзор различных инструментов, вот еще несколько ссылок с информацией о самой технологии MSI.
    • Вот общее описание задач развертывания , обычно поддерживаемых в инструменты развертывания и описание того, почему развертывание кажется все более сложным.
    • Многие люди, кажется, думают, что MSI - это больше проблем, чем оно того стоит, и иногда это можно понять. Преимущества реальны - особенно для корпоративного развертывания, но есть и некоторые проблемы.


      Связанные темы развертывания

      • Прежде чем углубляться в обзор различных инструментов, вот еще несколько ссылок с информацией о самой технологии MSI.
      • Вот общее описание задач развертывания , обычно поддерживаемых в инструменты развертывания и описание того, почему развертывание кажется все более сложным.
      • Многие люди, кажется, думают, что MSI - это больше проблем, чем оно того стоит, и иногда это можно понять. Преимущества реальны - особенно для корпоративного развертывания, но есть и некоторые проблемы.
      • Многие люди думают, что MSI - это больше проблем, чем она того стоит, и иногда это можно понять. Преимущества реальны - особенно для корпоративного развертывания, но есть и некоторые проблемы.
      • Многие люди думают, что MSI - это больше проблем, чем она того стоит, и иногда это можно понять. Преимущества реальны - особенно для корпоративного развертывания, но есть и некоторые проблемы.

      InstallShield

      • Многофункциональный.
      • Всегда в курсе последних технологий.
      • (Установка) Ориентировано на разработчиков.
        • Доступны разные редакции.
        • Флагманский продукт AdminStudio предоставляет как инструменты, ориентированные на разработчиков, так и инструменты для переупаковки.
      • Очень хорошее управление выпусками , локализация и функции автоматизации для автоматизации процесса сборки. По крайней мере лучше, чем у конкурентов.
        • For complex products release management is perhaps the main selling point for InstallShield. You can deliver flavors of all kinds with ease: language versions, oem versions, viewers, application editions, etc... using release flags and similar constructs.
        • Release flags are essentially used to conditionally exclude or include certain parts of the product from each compiled setup - this is often a large part of what is asked for when making professional families of setups.
        • The release view in Installshield allows full overview of all your different setup types and editions. You see all language versions and release setups delivered for the web (one large setup file) or for redistributable media (external source files) and whatever other flavors you have delivered.
          • Что особенно важно для каждого выпуска и выпуска, вы можете переопределить важные настройки , такие как название продукта, версия продукта, пакет, продукт и код обновления, а также многие другие необходимые настройки, которые должны динамически изменяться в зависимости от продукта. выпуск и языковая версия.
          • Во многих других продуктах этот тип управления выпусками и выпусками может быть намного сложнее реализовать. Для более простых настроек этот тип гибкости может быть менее важным.
        • API автоматизации для продукта позволяет легко « дистанционно управлять » из сценариев автоматизации сборки из различные типы.
          • Существуют также модули сборки командной строки (для использования на выделенных серверах сборки).
          • Полная автоматизация сборки всего набора продуктов и редакций легко возможна с помощью обычного VBScript / VBA / Автоматизация Javascript.
        • Полная поддержка локализации с строковыми таблицами , используемыми для поддержки различных языков настройки.
          • Базовые диалоговые окна также предоставляются в готовом виде на нескольких языках (за дополнительную плату).
          • Вам нужно только локализовать собственное содержимое настройки (подписи к списку функций, любые настраиваемые диалоговые окна или окна сообщений, изображения с текстом, и т. д ...) - еще много работы.
          • Вы можете поставить огромную многоязычную установку. По моему опыту, это не рекомендуется по нескольким причинам (прочтите раздел локализации). Наихудшая проблема заключается в том, что вам необходимо локализовать все новое и измененное содержимое на всех языках, прежде чем вы сможете доставить английскую версию. Это почти никогда не приемлемо для маркетинга / продаж. И всегда есть исправления, которые требуют от вас перекомпоновки и повторного выпуска одного языка, а затем вы хотите сделать это без UAT и QA для всех других языков. Лучше предоставить отдельные сборки для каждого языка (легко реализуемые).
            • Очень мощный. Довольно сложно.
            • Ограничения функций графического интерфейса базовой технологии MSI вызывают некоторые затруднения и досадные ограничения, но это одинаково для всех инструментов развертывания.
            • Основная причина в том, что графический интерфейс MSI реализован с использованием таблиц данных внутри MSI сам файл, и это вызывает серьезные ограничения в отношении диалоговых событий по сравнению с полной «моделью событий» для правильных диалогов Win32.
          • Полнофункциональный язык сценариев в стиле C для настраиваемых действий, называемых « ] Installscript ».
            • Installscript теперь компилируется в родную среду - или эмулируется с помощью собственной песочницы, не уверен в какой. нет необходимости устанавливать среду выполнения , как раньше.
            • Между прочим, эта среда выполнения была источником некоторых довольно проблем с развертыванием из-за повреждения среды выполнения ] - кажется, часто связано с DCOM - и различные несовместимости между различными версиями среды выполнения. Вот несколько ссылок для устранения неполадок для "устаревших целей":
            • Хотя среда выполнения была очень проблематичным источником ошибок, все связанные проблемы теперь, похоже, полностью решены, начиная с Installshield 12 и более поздних версий.
          • Хорошо интегрированная справка в GUI .
            • Очень важно для такой сложной технологии.
            • Часто очень полезно - особенно для решения общих задач.
          • Формат хранения двоичных файлов по умолчанию не допускает реального управления исходным кодом или ветвления (в отличие от WiX который доставляет это из коробки). Думаю, есть способ сохранить проект в текстовом формате, но я им никогда не пользовался. Не уверен, насколько это будет эффективно.
          • Без тени сомнения, на сегодняшний день самый трудный из всех установочных продуктов.
            • Честно говоря, большинство ошибок связано со специальным типом проекта « Installscript MSI », который реализует настраиваемую модель диалогового окна для настроек MSI (а не собственный графический интерфейс на основе таблиц, который подавляется).
            • В Другими словами, Installscript MSI тип проекта НЕ ДОЛЖЕН использоваться ни при каких обстоятельствах. Пожалуйста, примите это близко к сердцу, если вы все еще используете их - их особенно сложно правильно обновить (первое развертывание может быть нормальным, но обновления не работают). Другие типы проектов, похоже, работают хорошо.
            • После отказа от Installscript MSI (что, казалось, делало большинство людей), этот инструмент работал для меня лично (хотя и не без ошибок).
          • Я был не ] доволен поддержкой развертывания сайтов IIS и приложений COM + . Мне нужно было использовать гибкость и настраиваемость WiX, а не простоту использования Installshield. Просто не хватало гибкости и контроля.
          • Поддержка виртуальных пакетов Microsoft App-V и новых технологий виртуализации.
            • Позволяет несколько новых вещей по сравнению с обычным приложением.
            • Потоковая передача приложений - без локальной установки на машинах - JIT.
            • Использование двух несовместимых программ на одном компьютере.
            • Обновление через сервер.
            • ] Контрольное лицензирование - максимальное количество одновременных пользователей или привязка программного обеспечения к группе / пользователю.
            • Быстро и легко представить приложение пользователям.
            • Подробнее о маркетинге Microsoft здесь .

          Wise

          Wise официально прекращает деятельность , но он был воскрешен раньше. К сожалению, некоторые юридические проблемы могли сделать его окончательным на этот раз - насколько я знаю. Было бы обидно за такой отличный инструмент. Он был приобретен Altiris, а затем Symantec. Сейчас он не продается . Вкратце о хороших функциях Wise я все же оставлю:

          • Быстрый, простой и достаточно многофункциональный.
            • Очень хорошая простота использования в целом, отличный набор функций.
            • Отсутствие некоторых (очень) продвинутых функций, таких как IIS, расширенное управление выпусками и т. Д.
          • Ориентирован на администратора / Repackager.
            • Меньше внимания к коду, чем Installshield.
            • Уникальный и гибкий графический редактор сценариев.
            • Хорошо продуманный графический интерфейс настройки конфигурации.
          • Также отлично подходит для небольших групп разработчиков , которые ищут быстрый и относительно простой способ развернуть свое приложение.
          • Иногда немного отстает от новейших технологий (по сравнению с Installshield), но сравнительно «без ошибок».
          • Интуитивно понятный графический интерфейс, обычные вещи (очень) просты.
          • Очень приятное управление настройки последовательности установки и пользовательских действий в редакторе стилей скриптов. Больше сценариев графического интерфейса, меньше кодирования.
          • Надежность , очень мало серьезных ошибок.
          • Справочные ресурсы и поддержка сообщества не на одном уровне с InstallShield, но все же хороши.
          • Мой любимый инструмент для отладки и создания прототипов (быстрый, стабильный, простой в использовании,
            • Ни один другой инструмент, который я пробовал, не приблизился к Wise для двоичных различий различных файлов MSI.
            • Простота использования и ясность программы просмотра различий были не менее чем фантастическими.
            • Для корпоративной упаковки такие diff-features могут быть очень важной частью работы, так как у вас есть сотни или даже тысячи различных программных пакетов для управления во многих различных версиях.
          • На субъективную заметку : мой любимый инструмент для создания пакетов. Очень надежный.
            • Очень жаль, что инструмент больше не доступен.
            • Мы всегда можем надеяться на «реинкарнацию» (я видел фрагменты графического интерфейса, которые выглядят как Wise в некоторых других инструментах).

          WiX ] ( советы по быстрому запуску )

          • Большой плюс - это исходные текстовые файлы . Нет необходимости хранить исходный код в виде двоичного файла, где практически невозможно отслеживать изменения и осуществлять надлежащий контроль версий.
            • Proper text sources make all the difference for development teams in terms of branching, versioning and merging. It is a quantum leap (in my opinion particularly for in-house development in large corporations - where process is complex, turnaround is quick and there are many developers).
            • The need for and use of text source files was central to the creation of the WiX toolkit. Here is a quick and incomplete "WiX history" with more details. Recommended read to grasp the foundation and rationale for WiX.
            • Some deployment tools that store the installer as binaries could end up in situations where the binary source would exhibit mysterious problems that could never be tracked down properly.
              • Это произошло особенно после обновлений инструментов, которые также обновили формат в источнике (по какой-либо причине).
              • Обновления часто затрагивали десятки таблиц и сотни записей, что делало невозможной задачу эффективного отслеживания реальной проблемы .
              • Симптомы включали такие вещи, как внезапное начало медленных сборок, внезапная низкая скорость установки, необъяснимые ошибки компиляции, даже полное повреждение файлов и т. Д.
              • WiX обеспечивает полную прозрачность и «простоту» исходного кода. Это просто чище и надежнее, если все сделано правильно, и возможно автоматическое обновление источника, но не вызывает каскадных изменений в десятках таблиц MSI. В сочетании с системой управления версиями изменения легко отслеживаются и (надеюсь) понимаются - никаких таинственных, недокументированных вещей не добавляется.
              • С учетом всего сказанного следует отметить, что обновление исходных файлов с WiX 3 до WiX 4 до не является тривиальным. Будем надеяться, что это разовая ситуация. Я не уверен, почему это произошло, честно говоря, и у меня нет последней информации об этом.
              • Возможно, проверьте реальные новости прямо из блога Роба Меншинга: http://robmensching.com/ blog / и блог Боба Арсона https://www.joyofsetup.com/ . Прямо изо рта, насколько Интернет делает возможным - временами это прекрасный мир ;-). Ходят слухи, что они делают « черепах на всем протяжении ».
          • Твердо, очень мало серьезных ошибок . Надеюсь, это разовая ситуация. Я не уверен, почему это произошло, честно говоря, и у меня нет последней информации об этом.
          • Возможно, проверьте реальные новости прямо из блога Роба Меншинга: http://robmensching.com/ blog / и блог Боба Арсона https://www.joyofsetup.com/ . Прямо изо рта, насколько Интернет делает возможным - временами это прекрасный мир ;-). Ходят слухи, что они делают « черепах на всем протяжении ».
      • Твердо, очень мало серьезных ошибок . Надеюсь, это разовая ситуация. Я не уверен, почему это произошло, честно говоря, и у меня нет последней информации об этом.
      • Возможно, проверьте реальные новости прямо из блога Роба Меншинга: http://robmensching.com/ blog / и блог Боба Арсона https://www.joyofsetup.com/ . Прямо изо рта, насколько Интернет делает возможным - временами это прекрасный мир ;-). Ходят слухи, что они делают « черепах на всем протяжении ».
  • Твердо, очень мало серьезных ошибок . joyofsetup.com/. Прямо изо рта, насколько Интернет делает возможным - временами это прекрасный мир ;-). Ходят слухи, что они делают « черепах на всем протяжении ».
  • Твердо, очень мало серьезных ошибок . joyofsetup.com/. Прямо изо рта, насколько Интернет делает возможным - временами это прекрасный мир ;-). Ходят слухи, что они делают « черепах до самого конца ».
  • Твердо, очень мало серьезных ошибок .
    • Для тех, кто боролся с давними, периодически возникающими, необъяснимыми ошибками в других инструментах, это находка. {Истории о войне удалены.}
    • И даже лучше: кажется, что проблемы на самом деле решаются в WiX, иногда с помощью сообщества - что и требуется для набора инструментов с открытым исходным кодом. В большинстве случаев кажется, что основная команда заботится об этом.
  • Очень многофункциональный , но иногда довольно сложный в использовании.
    • Требуется время, чтобы привыкнуть к этому, и даже когда вы привыкли к этому, все может быть "неудобным", чтобы получить правильный (особенно если вы не используете должным образом прилагаемые вспомогательные инструменты).
    • Это помогает использовать Инструмент декомпиляции dark.exe для декомпиляции существующих файлов MSI в WiX XML. Это позволяет вам изучить источник WiX, не зная о нем заранее.
    • Исключительная настраиваемость для сложных вещей , таких как IIS , COM + , SQL Server , разрешение , правила брандмауэра и т. Д. «Все» возможно, но временами отчасти задействовано.
    • WiX эффективно « расширяет Windows Installer » новыми и столь необходимыми функциями. Это огромная выгода для всех, кому раньше приходилось «накатывать свои собственные» решения - часто для вещей, которые казались тривиальными (но все еще были очень подвержены ошибкам).
    • Мощь этих расширений невозможно переоценить. Вы можете избавиться от множества сложных пользовательских действий, написанных самостоятельно, в пользу протестированных решений . С правильной поддержкой отката ! (Эта функция, которой очень часто пренебрегают в настройках поставщиков - по моему опыту, почти все они - вызывает нечистое состояние системы после прерванных настроек).
    • У меня есть личный опыт написания библиотеки DLL C ++ с настраиваемыми действиями для общих задач с надлежащей поддержкой отката,
    • Полная интеграция в Visual Studio с IntelliSense.
      • Очевидно, будут некоторые ограничения относительно того, какие версии Visual Studio будут поддерживаться WiX 4.
      • У меня пока нет подробностей, но вам понадобится последняя версия Visual Studio. Я думаю, что об этом есть хорошие записи в блогах Роба и Боба
    • Это бесплатно (!). Каждый разработчик может построить установку. Но кто-то должен владеть им (!). Действительно; -).
    • Это тоже Open Source .
    • How do you get started? (direct link to an answer that has been well-received - to my surprise).
      • Для мастеров на основе примеров попробуйте эту статью Code Project , чтобы быстро узнать, как создавать файлы MSI с помощью WiX (WiX 3). Это действительно просто (если вы знаете MSI, это очевидно).
      • Вы также можете прочитать эту статью WiX Stack Overflow , чтобы получить дополнительные советы по быстрому запуску.
      • НОВОЕ И РЕКОМЕНДУЕТСЯ : Ответ stackoverflow, показывающий текущие минимальные изменения, необходимые для компиляции рабочего файла MSI при создании нового проекта WiX в Visual Studio: Установщик WiX msi не устанавливает приложение Winform, созданное с помощью Visual Studio 2017 .
      • И вы можете использовать Dark.exe (декомпилятор MSI) WiX, чтобы декомпилировать существующий файл MSI в соответствующий формат WiX XML, а затем изучить, как он сочетается друг с другом. Очень полезно и познавательно - особенно для расширенных функций.
    • Текущие и будущие версии.
      • Версия 3.1 стабильна и отсутствует (выпущена в мае 2017 г.). Надежный .
      • Версия 4 на данный момент находится в разработке восемь лет (август 2017 г.).
        • Неясно, когда оно будет доступно для стабильного выпуска.
        • Очевидно, это будет очень серьезное обновление , которое требует существенной доработки существующих файлов WiX для успешного использования.
        • Я могу не сообщаю никаких подробностей о том, в чем заключаются основные различия на данный момент.
        • Стабильность и надежность версии 3. без сомнения сохранены.

    Advanced Installer

    • Я не использовал его для реальной разработки.
    • Очень простой в использовании, приятный графический интерфейс.
    • ОБНОВЛЕНИЕ :
      • Чрезвычайно хорошее интегрированное ведение журнала в самом инструменте во время тестовой установки для разработки. Очень впечатляет.
      • Также доступен для корпоративной переупаковки в « Architect edition ».
      • Многофункциональный . Компилирует все виды настроек и поддерживает все новые технологии (App-X, App-V и т. Д.)
      • Поддержка App-V кажется очень обширной.
      • Может импортировать ряд исходных файлов других инструментов (Installshield, Inno, Wix, Wise, NSIS, Visual Studio, Desktop Bridge и т. Д.). Мною не тестировалось.
    • Насколько я могу судить, проекты хранятся в проприетарном текстовом формате.
    • Кажется надежным, и, что очень важно, скрывает некоторую сложность MSI с помощью хорошего графического интерфейса , который показывает интуитивно понятные флажки и параметры, а не флаги и свойства стиля SDK. Это хорошая вещь, и на данный момент она полностью отсутствует в WiX.
    • Похоже, это может быть полезно для прототипирования и тестирования, очень мощный графический интерфейс и автоматическая для часто используемых функций.
    • Я скучаю Представление Release в InstallShield с его флагами выпуска и настройками автоматизации сборки, а также другими функциями управления выпусками (которые могут быть улучшены уже сейчас).
    • В целом надежный инструмент , который выглядит лучше всего подходит для разработчиков, ищущих простой способ развернуть свои приложения . Подобно Wise в этом отношении.
    • Слишком мало практического опыта, чтобы писать намного больше. Попробуйте сами.

    Другие инструменты

    • Orca - это бесплатный инструмент Windows SDK, который позволяет открывать, редактировать и в определенной степени сравнивать двоичные файлы MSI. Он также позволяет выполнять другие операции, такие как создание файлов преобразования для изменения файлов MSI и некоторые другие технические операции. Базовый инструмент, который я всегда хотел бы установить и использовать. Здесь есть более обширный абзац о косатках , в котором обсуждается его использование (посмотрите вниз). Обычно вам нужно установить Windows SDK, чтобы получить Orca (просто установите последнюю версию и найдите инструмент).
    • Мне был рекомендован бесплатный инструмент под названием « Super Orca », поскольку имеет " InstEd ". Я использовал их ненадолго, но они выглядят нормально, и их легче достать, чем Orca (нет Windows SDK для загрузки).
    • И есть также много других инструментов . Вот список инструментов из http://www.installsite.org с указанием, поддерживается ли инструмент все еще активно или нет: http://www.installsite.org/pages/ en / msi / authoring.htm (спасибо Филу Уилсону за ссылку - я не смог воскресить его ответ).
    • Полагаю, я также могу включить ссылку на Список программ установки в википедии .

    Рекомендации по инструментам?

    Я не могу давать прямые рекомендации по инструментам. Но я полагаю, что могу сделать несколько «наблюдений» и предоставить дополнительные ссылки для принятия решений.

    Для любой серьезной команды разработчиков я бы предложил WiX. Если другие инструменты просты в использовании (что очень важно, а иногда и единственное, что важно), WiX отличается своей гибкостью, расширяемостью, стабильностью и использованием исходных текстовых файлов XML - за исключением того, что приходится иметь дело с некоторыми трудностями. А благодаря бесплатной лицензии каждый разработчик может просматривать и компилировать исходный код, а изменения легко отслеживать, отменять или утверждать. Однако управление процессом с разработчиками, обновляющими единый источник WiX, по-прежнему имеет свои проблемы (не отличается от обычных работ по разработке - нет ничего легкого).

    Для корпоративной переупаковки (что, по общему признанию, немного выходит за рамки разработчика фокус stackoverflow.com) Я думаю, что на данный момент основными вариантами являются Flexera AdminStudio и Advanced Installer Architect . Доступны и другие продукты, и, как всегда, на сайте installsite.org есть подробная информация: Инструменты: переупаковка и Корпоративное развертывание .

    Для небольших групп разработчиков , которые ищут быстрый и простой способ развертывания своих приложений, я полагаю, что Installshield и Advanced Installer являются наиболее распространенные инструменты, основанные на графическом интерфейсе. Они предоставляют множество функций, и вы сможете быстро выполнить настройку. Как уже было сказано, иногда это единственное, что важно. На самом деле очень часто. Однако можно поставить отличный установщик, используя вместо этого WiX , но требуется гораздо больше знаний. Есть кривая обучения и есть некоторые серьезные ограничения - особенно в отношении графического интерфейса на данный момент - но базовая технология очень надежна и бесплатна. И, что важно, есть множество других инструментов (список из http: //www.installsite. org ), что может быть более подходящим для вашей задачи - особенно, если это простое приложение, которому нужны только базовые функции развертывания. «Несправедливо», что я не предоставил больше информации об этих вполне эффективных, но реже используемых или установленных инструментах.

    Я должен прояснить, что я рекомендую WiX для корпоративных команд, выполняющих собственные приложений , потому что они могут использовать гибкость, обеспечиваемую WiX, а также будут обладать доступным опытом и техническими навыками , чтобы справиться со сложностью WiX. И они могут обучать новых ребят, когда это необходимо. Очень важный вопрос. WiX нетривиально изучить, если у вас еще нет обширных знаний об установщике Windows - тогда это кусок пирога, но по-прежнему требует времени, потому что он такой гибкий и из-за отсутствия лучшего слова: «неудобный» - это похоже на настоящую разработку, у вас есть реальный контроль, но нужно быть точным. После настройки источника WiX может возникнуть мечта - вы знаете, что происходит.

    Подводя итог: если вы небольшой (или крупный) сторонний поставщик , ищите хороший способ Чтобы ваше приложение было быстро доставлено вашим клиентам , вам, вероятно, будет лучше использовать коммерческий инструмент , призванный обеспечить простоту использования и быстрое решение для реализации ограниченного количества изменений. В частности, для IIS коммерческие инструменты не обеспечивали гибкости, необходимой мне в прошлом. А командам собственных разработчиков следует хотя бы попробовать WiX.

    Наконец, одно предостережение : Advanced Installer , InstallShield и Wise обычно позволяют упаковывать программное обеспечение для виртуализации . На данный момент мне не известны какие-либо функции WiX для этого. Пожалуйста, добавьте комментарии или просто отредактируйте этот пост, если у вас есть информация.


    Главный практический совет :

    Обычно я использую другие инструменты для прототипирования и WiX для реализации, если у меня есть выбор. Вы можете использовать WiX's dark.exe (декомпилятор MSI) для декомпиляции существующего файла MSI. Иногда я реализую что-то в Wise или InstallShield, компилирую MSI-файл и декомпилирую его в формат WiX. Затем я поднимаю разметку WiX и выгружаю в свой основной файл WiX. Отлично работает и обычно очень быстро. Это в сочетании с теплом . Инструмент exe для автоматического создания компонентов позволил мне упаковать огромный веб-сайт IIS менее чем за 10 минут после некоторой практики. После этого у меня есть полная настраиваемость, предоставляемая WiX, с простотой использования других инструментов.

    Очистка декомпилированного исходного кода - это не пикник, но и ракетостроение. Требуются некоторые знания MSI, и вы некоторое время будете «возиться». Имейте в виду, что скачивать пробные версии коммерческих инструментов для создания и декомпиляции файла MSI не рекомендуется. Полученные в результате файлы MSI обычно снабжены водяными знаками с функциями, которые трудно удалить.


    Некоторые ссылки :

  • 113
    ответ дан 26 November 2019 в 17:08
    поделиться

    Насколько хорош WiX для не-.NET вещей?

    WiX изначально поддерживает все функции установщика Windows . Установщик Windows предшествовал .NET.

    Лично я предпочитаю WiX, а не InstallShield, потому что

    • текстовый формат XML позволяет просматривать совершает, объединяя изменений между ветки
    • автоматизация сборки должны включать настройку генерация, что легко с помощью файлов WiX
    • wixlib с группой компонентов определения позволяют модульную установку разработка . Не нужно беспокоиться о зависимости зависимостей, и т. д.
    • никаких проблем с лицензированием или развертыванием, мы просто включаем набор инструментов WiX в папку / tools наших проектов в SVN

    Когда мы использовали InstallShield, все это были болевые точки. Однако у WiX очень крутая кривая обучения.

    18
    ответ дан 26 November 2019 в 17:08
    поделиться

    Я не использовал InstallShield несколько лет. На моей последней работе мы перешли от него к NSIS главным образом потому, что его двоичный формат затруднял контроль версий, а также потому, что несколько раз исходный файл просто был поврежден без надежды на восстановление. Конечно, это могло быть связано с SourceSafe !

    Кроме того, это было излишне сложным. Не поймите меня неправильно - мы делали довольно сложные установщики с множеством условных путей, модулей слияния и сложных пользовательских интерфейсов, но даже для этого все было слишком, слишком сложно.

    NSIS имеет отличную систему плагинов, и вы можете в обязательном порядке запрограммировать его, используя плагин LogicLib , создать файлы автоматического удаления и многое другое.

    5
    ответ дан 26 November 2019 в 17:08
    поделиться

    I inherited a handful of InstallShield (v12) projects. The files are all text/XML and thus there are no version control issues. We have a build machine that uses their command line tools, which works well. What I don't like is (a) the cost per developer seat and (b) bugs.

    Inno Setup is very capable/flexible and there are generally multiple ways to accomplish a goal, which led to a steep learning curve. We are several versions behind their latest version (due to their upgrade cost structure). Because our products run on Widows, if we have to switch I might first research Microsoft's installer solution that comes with a MSDN subscription.

    1
    ответ дан 26 November 2019 в 17:08
    поделиться
    Другие вопросы по тегам:

    Похожие вопросы: