Ответ 1
ОБНОВЛЕНИЕ, август 2018, новый и более короткий вариант: Как создать установщик Windows. Сосредоточены на обобщении
MSI and its major benefits
а также на перечисленииmajor tools available
(со ссылками на скачивание), а также наmentioning some new, trending deployment technologies
.
Я работал в области разработки программного обеспечения в качестве менеджера по выпуску, инженера по сборке, разработчика по настройке и в качестве упаковщика приложений, инженера по SOE и инженера по развертыванию (SCCM) в крупных корпорациях.
Попутно я использовал большинство основных инструментов для упаковки (некоторые в разных версиях): InstallShield, мудрый (вне рынка, к сожалению), WiX, Advanced Installer (только тестирование), Orca и я протестировали некоторые другие инструменты (ссылка на "Инструменты разработки для установщика Windows" для разработчиков по адресу http://www.installsite.org - довольно исчерпывающий список инструментов). Я также использовал менее распространенные инструменты для упаковки и развертывания, такие как Computer Associates Unicenter - возможно, уже не в продаже. Существует также страница, посвященная средствам разработки без MSI.
ОБНОВЛЕНИЕ: Если вам нужен инструмент MSI для сравнения двух версий файла MSI или просто для извлечения информации из файла MSI, вы можете прочитать этот ответ: Как я могу сравнить содержимое двух (или более) MSI файлы? (ориентирован на бесплатные инструменты MSI).
В этом посте представлен обзор сильных сторон некоторых различных инструментов разработки, а также некоторые хитрости, о которых следует знать. При всем их сходстве эти инструменты на самом деле совершенно разные. Были предприняты все попытки сделать описания как можно более объективными - описание реального опыта с положительными и отрицательными сторонами.
Связанные темы развертывания
- Прежде чем углубляться в обзор различных инструментов, вот несколько других ссылок с информацией о самой технологии MSI.
- Вот общее описание задач развертывания, обычно поддерживаемых в инструментах развертывания, и описание того, почему развертывание кажется все более и более сложным.
- Многие люди думают, что MSI доставляет больше хлопот, чем стоит, и иногда это можно понять. Преимущества реальны - особенно для корпоративного развертывания, но некоторые из них являются проблемами.
- Вот описание, которое я написал о главных корпоративных преимуществах MSI (от serverfault.com). Статья выросла слишком сильно, но, надеюсь, все еще актуальна.
- В той же статье я написал о типичных реальных недостатках дизайна в файлах MSI (работа, над которой все еще ведется, - просто "дамп памяти" от "обеих сторон программного обеспечения": разработка и развертывание).
InstallShield
- Функция богатая.
- Всегда в курсе новейших технологий.
- (Настройка) Разработчик ориентирован.
- Доступны разные издания.
- Флагманский продукт AdminStudio предоставляет как инструменты для настройки, так и инструменты для переупаковки.
- Очень хорошие функции управления релизами, локализации и автоматизации для автоматизации процессов сборки. По крайней мере, лучше, чем у конкурентов.
- Для сложных продуктов управление выпуском является, пожалуй, основным коммерческим аргументом для InstallShield. Вы можете с легкостью доставлять разные варианты: языковые версии, oem-версии, средства просмотра, выпуски приложений и т.д., Используя флаги выпуска и аналогичные конструкции.
- Флаги выпуска в основном используются для условного исключения или включения определенных частей продукта из каждой скомпилированной установки - это часто является большой частью того, что требуется при создании профессиональных семейств установок.
- Представление выпуска в Installshield позволяет получить полный обзор всех ваших различных типов установки и выпусков. Вы видите все языковые версии и настройки выпуска, поставляемые для Интернета (один большой установочный файл) или для распространяемых носителей (внешние исходные файлы), а также любые другие предоставленные вами варианты.
- Крайне важно для каждого выпуска и выпуска вы можете переопределить важные параметры, такие как название продукта, версия продукта, package-, product- и код обновления, а также многие другие необходимые параметры, которые должны динамически изменяться в зависимости от версии продукта и языковой версии.
- Во многих других продуктах этот тип управления выпуском и выпуском может быть намного сложнее реализовать. Для более простых установок этот тип гибкости может быть менее важным.
- API автоматизации для продукта позволяет легко " дистанционно управлять " из сценариев автоматизации сборки различных типов.
- Существуют также модули сборки командной строки (для использования на выделенных серверах сборки).
- Полная автоматизация сборок целого набора продуктов и редакций легко возможна с помощью обычной автоматизации VBScript/VBA/Javascript.
- Полная поддержка локализации с использованием таблиц строк, используемых для поддержки различных языков настройки.
- Базовые диалоги также предоставляются в готовом виде на нескольких языках (за дополнительную плату).
- Вам нужно только локализовать свой собственный установочный контент (подписи к списку функций, любые пользовательские диалоговые окна или окна сообщений, изображения с текстом и т.д.) - все еще много работы.
- Вы можете поставить огромную многоязычную установку. Это не рекомендуется в моем опыте по нескольким причинам (см. Раздел локализации). Худшая проблема заключается в том, что вы должны локализовать все новое и измененное содержимое на всех языках, прежде чем вы сможете доставить английскую версию. Это почти никогда не приемлемо для маркетинга/продаж. И всегда есть исправления, которые требуют, чтобы вы перестраивали и переиздавали один язык, а затем вы хотите сделать это без UAT и QA для всех других языков. Лучше предоставить отдельные сборки для каждого языка (легко реализуемые).
- Хорошая поддержка сообщества: форумы сообщества пользователей.
- Довольно хороший графический интерфейс, обычные вещи довольно просты.
- Полноценный редактор MSI-GUI.
- Очень могущественный. Несколько сложнее.
- Ограничения основных функций графического интерфейса технологии MSI вызывают некоторые затруднения и раздражающие ограничения, но это одинаково для всех средств развертывания.
- Основная причина заключается в том, что графический интерфейс MSI реализован с использованием таблиц данных внутри самого файла MSI, и это вызывает серьезные ограничения в отношении событий диалога по сравнению с полной "моделью событий" для правильных диалогов Win32.
- Полнофункциональный язык сценариев в стиле C для пользовательских действий, называемый " Installscript ".
- Installscript теперь компилируется в нативный - или эмулируется с собственной песочницей, не знаю, какой именно. Нет необходимости устанавливать среду выполнения, как раньше.
- Между прочим, эта среда выполнения была источником некоторых довольно проблематичных проблем развертывания из-за повреждения среды выполнения - по-видимому, часто связанного с DCOM - и различных несовместимостей между различными версиями среды выполнения. Вот несколько ссылок на устранение неполадок для "устаревших целей":
- Невозможно установить InstallShield Scripting Run Time.
- Программа установки не может найти или обновить ISScript.msi.
- Flexera Consumer Central (для проблем с настройкой конечного пользователя).
- Хотя среда выполнения была очень проблематичным источником ошибок, все связанные проблемы теперь, похоже, полностью решены, начиная с Installshield 12 и более поздних версий.
- Красиво интегрированная справка в GUI.
- Очень важно для такой сложной технологии.
- Часто очень полезно - особенно для решения общих задач.
- Стандартный формат хранения двоичных файлов не допускает никакого реального управления исходным кодом или ветвления (в отличие от WiX, который обеспечивает это из коробки). Я думаю, что есть способ сохранить проект в текстовом формате, но я никогда не использовал его. Не уверен, насколько это будет эффективно.
- Без тени сомнения, безусловно, самый плохой из всех инсталляционных продуктов.
- Честно говоря, большинство ошибок связано со специальным типом проекта " Installscript MSI ", который реализует настраиваемую модель диалога для установок MSI (а не собственный графический интерфейс на основе таблиц, который подавляется).
- Другими словами, тип проекта Installscript MSI НЕ ДОЛЖЕН использоваться ни при каких обстоятельствах. Пожалуйста, примите это близко к сердцу, если вы все еще используете их - их особенно трудно обновить должным образом (первое развертывание может быть в порядке, но обновления ломаются). Другие типы проектов, кажется, работают хорошо.
- После отказа от Installscript MSI (что, похоже, делало большинство людей), инструмент работал довольно хорошо для меня лично (хотя и не без ошибок).
- Меня не порадовала поддержка развертывания сайтов IIS и приложений COM+. Мне нужно было использовать гибкость и настраиваемость WiX, а не простоту использования Installshield. Просто не хватало гибкости и контроля.
- Поддержка виртуальных пакетов Microsoft App-V и новых технологий виртуализации.
- Позволяет несколько новых вещей по сравнению с обычным приложением.
- Потоковое приложение - без локальной установки на машины - JIT.
- Используйте два несовместимых программного обеспечения на одном компьютере.
- Обновление через сервер.
- Контроль лицензирования - максимальное количество одновременных пользователей или привязка программного обеспечения к группе/пользователю.
- Представьте приложение быстро и легко пользователям.
- Больше маркетинга Microsoft здесь.
мудрый
Мудрый официально ушел в отставку, но он уже воскрес. К сожалению, некоторые правовые вопросы, возможно, сделали это окончательным на этот раз - насколько я знаю. Это было бы позором для такого замечательного инструмента. Он был приобретен Altiris, а затем Symantec. Похоже, что сейчас он не на рынке. Я все еще ухожу в резюме хороших мудрых особенностей:
- Быстро и легко и довольно многофункциональный.
- Очень хорошая простота использования в целом, отличный набор функций.
- Отсутствие некоторых (очень) расширенных функций, таких как IIS, расширенное управление выпусками и т.д.
- Администратор /Repackager ориентирован.
- Меньше кода сосредоточены, чем Installshield.
- Уникально способный и гибкий графический редактор сценариев.
- Хорошо продуманная настройка конфигурации GUI.
- Также отлично подходит для небольших групп разработчиков, которые ищут быстрый и относительно простой способ развертывания своего приложения.
- Иногда немного отстает от новейших технологий (по сравнению с Installshield), но сравнительно "без ошибок".
- Интуитивно понятный графический интерфейс, общие вещи (очень) легко.
- Очень хорошая обработка конфигурации последовательности установки и пользовательских действий в редакторе стилей скрипта. Больше сценариев GUI, меньше кода.
- Твердый камень, очень мало значительных ошибок.
- Справочные ресурсы и поддержка сообщества не наравне с InstallShield, но все же хороши.
- Мой инструмент выбора для отладки и создания прототипов (быстрый, стабильный, простой в использовании, отличные функции сравнения).
- И что касается различий (позволяет двоичное сравнение двух файлов MSI).
- Ни один другой инструмент, который я пробовал, не приблизился к Wise для бинарных различий различных файлов MSI.
- Простота использования и ясность просмотра различий были не менее фантастическими.
- Для корпоративной упаковки такие различия могут быть очень важной частью работы, поскольку у вас есть сотни или даже тысячи различных пакетов программного обеспечения для управления во многих различных версиях.
- На субъективной ноте: мой любимый упаковочный инструмент. Очень надежный.
- Жаль, что инструмент больше не доступен.
- Мы всегда можем надеяться на "реинкарнацию" (я видел фрагменты GUI, которые выглядят как Wise в некоторых других инструментах).
WiX (советы по быстрому запуску)
- Большой плюс - исходные текстовые файлы. Нет необходимости хранить исходный код в виде двоичного файла, где практически невозможно отслеживать изменения и осуществлять надлежащий контроль версий.
- Правильные текстовые источники имеют все значение для групп разработчиков с точки зрения ветвления, управления версиями и слияния. Это качественный скачок (по моему мнению, особенно для внутренней разработки в крупных корпорациях - там, где процессы сложны, процессы быстры, а разработчиков много).
- Необходимость и использование текстовых исходных файлов были центральными при создании инструментария WiX. Вот быстрая и неполная "история WiX" с более подробной информацией. Рекомендуется прочитать, чтобы понять основы и обоснование для WiX.
- Некоторые инструменты развертывания, которые хранят установщик в виде двоичных файлов, могут в конечном итоге оказаться в ситуациях, когда в двоичном источнике обнаружатся загадочные проблемы, которые никогда не смогут быть должным образом отслежены.
- Это произошло особенно после обновлений инструмента, которые также обновили формат в источнике (по любой причине).
- Обновления часто затрагивают десятки таблиц и сотни записей, что делает невозможной задачу эффективного выявления реальной проблемы.
- Симптомы включали такие вещи, как внезапное начало медленной сборки, внезапная медленная скорость установки, необъяснимые ошибки компиляции, даже полное повреждение файла и т.д.
- С WiX у вас есть полная прозрачность и "худоба" для вашего источника. Это просто чище и надежнее, когда все сделано правильно, и автоматическое обновление источника возможно, но не вызовет каскадных изменений через десятки таблиц MSI. В сочетании с контролем версий изменения легко отслеживаются и (мы надеемся) понятны - никаких загадочных недокументированных материалов не добавлено.
- Из всего сказанного следует отметить, что обновление исходных файлов с WiX 3 до WiX 4, по-видимому, не является тривиальным. Дай надежду, что это разовая ситуация. Я не уверен, почему это случилось честно, и у меня нет актуальной информации об этом.
- Возможно, проверьте реальные новости прямо из блога Роба Меншинга: http://robmensching.com/blog/ и блога Боба Арнсона https://www.joyofsetup.com/. Прямо изо рта лошади, как это делает Интернет - иногда это прекрасный мир ;-). Ходят слухи, что они делают " черепах на всем пути ".
- Твердый камень, очень мало значительных ошибок.
- Для тех, кто боролся с давними, неустойчивыми, необъяснимыми ошибками в других инструментах, это находка. {Военные истории удалены}.
- И даже лучше: проблемы на самом деле, кажется, решаются в WiX, иногда с помощью сообщества - как это подходит для набора инструментов с открытым исходным кодом. В большинстве случаев кажется, что основная команда позаботится об этом.
- Очень многофункциональный, но иногда довольно сложный в использовании.
- Требуется время, чтобы привыкнуть, и даже когда вы к этому привыкли, все может быть "неудобно", чтобы получить правильные результаты (особенно, если вы не используете правильно включенные вспомогательные инструменты).
- Это помогает использовать инструмент декомпилятора dark.exe для декомпиляции существующих файлов MSI в WiX XML. Это позволяет вам изучать источник WiX, не зная заранее об этом.
- Исключительная настраиваемость для сложных вещей, таких как IIS, COM+, SQL Server, разрешения, правила брандмауэра и т.д. "Все" возможно, но иногда бывает несколько сложным.
- WiX эффективно " расширяет установщик Windows " новыми и очень необходимыми функциями. Это огромное преимущество для всех, кому ранее приходилось "накатывать свои" решения - часто для вещей, которые казались тривиальными (но все же очень подверженными ошибкам).
- Сила этих расширений не может быть завышена. Вы можете избавиться от множества написанных самостоятельно сложных действий в пользу проверенных решений. При правильной поддержке отката ! (Особо пренебрегаемая особенность в установках поставщика - по моему опыту почти все из них - вызывает нечистое состояние системы после прерванных установок).
- У меня есть личный опыт написания dll C++ с настраиваемыми действиями для общих задач с надлежащей поддержкой отката, и объем работы был ошеломляющим - особенно обеспечение качества реальной функции отката.
- Замечательное отсутствие инструментов с графическим интерфейсом и очень мало хороших доступных образцов - особенно для WiX 4.
- Вещи, кажется, улучшаются, возможно, попробуйте это краткое резюме.
- Интересным проектом может быть IsWiX. Это стоит проверить.
- Учебные пособия по WiX: https://github.com/iswix-llc/iswix-tutorials
- Демонстрация Quick Youtube: https://www.youtube.com/watch?v=nnV_OU6fk8c
- Я устарел здесь, пожалуйста, помогите обновить это, если вы получили больше актуальной информации.
- Полная интеграция в Visual Studio, с IntelliSense.
- Очевидно, будут некоторые ограничения относительно того, какие версии Visual Studio будут поддерживаться WiX 4.
- У меня пока нет подробностей, но вам понадобится последняя версия Visual Studio. Я думаю, что есть хорошие записи в блоге от Роба и Боба об этом.
- Это бесплатно (!). Каждый разработчик может построить установку. Кто-то должен владеть этим, хотя (!). В самом деле ;-).
- Это тоже с открытым исходным кодом.
- "Сообщество": https://github.com/wixtoolset. И открытые вопросы: https://github.com/wixtoolset/issues/issues
- Загрузка инструментария также включает DTF (Deployment Tools Foundation). .NET классы для работы со всеми MSI файлами с помощью автоматизации. Смотрите образец в строке здесь. Чрезвычайно полезный и хорошего качества. Нет COM- взаимодействия, чтобы иметь дело с. Смотрите этот пост serverfault.com. И блог Криса Пейнтера.
- Как вы начали? (прямая ссылка на хорошо принятый ответ - к моему удивлению).
- Для опытных мастеров попробуйте эту статью Code Project, чтобы быстро начать создавать файлы MSI с WiX (WiX 3). Это действительно просто (если вы знаете MSI, это само собой разумеющееся).
- Вы также можете прочитать эту статью о переполнении стека WiX для получения дополнительных советов по быстрому запуску.
- НОВОЕ И РЕКОМЕНДУЕМОЕ: Ответ на переполнение стека, показывающий текущие минимальные изменения, необходимые для компиляции рабочего файла MSI при создании нового проекта WiX в Visual Studio: установщик WiX не устанавливает приложение Winform, созданное в Visual Studio 2017.
- И вы можете использовать WiX dark.exe (декомпилятор MSI), чтобы декомпилировать существующий файл MSI в правильный формат WiX XML, а затем изучить, как он совмещается. Очень полезно и познавательно - особенно для продвинутых функций.
- Текущая и будущая версии.
- Версия 3.1 стабильна и вышла (выпущена в мае 2017 года). Рок твердый.
- На данный момент версия 4 находится на стадии разработки (август 2017 года).
- Не ясно, когда он будет доступен для стабильного выпуска.
- По всей видимости, это будет очень серьезное обновление, требующее существенной доработки существующих файлов WiX для успешного использования.
- Я не могу предоставить какие-либо подробности о том, каковы основные различия на данный момент.
- Стабильность и надежность версии 3, без сомнения, сохранились.
Расширенный установщик
- Я не использовал это для реального развития.
- Очень прост в использовании, приятный графический интерфейс.
- ОБНОВЛЕНИЕ:
- Чрезвычайно хорошая встроенная регистрация в самом инструменте во время тестовой установки. Очень впечатляюще.
- Также доступна для корпоративной переупаковки в своем " архитектурном издании ".
- Функция богатая. Компилирует все виды настроек и поддерживает все новые технологии (App-X, App-V и т.д.)
- Поддержка App-V кажется очень обширной.
- Может импортировать ряд исходных файлов других инструментов (Installshield, Inno, Wix, Wise, NSIS, Visual Studio, Desktop Bridge и т.д.). Не проверено обширно мной.
- Насколько я вижу, хранит проекты в проприетарном текстовом формате.
- Кажется солидным и решительно скрывает некоторую сложность MSI через хороший графический интерфейс, который показывает интуитивно понятные флажки и опции, а не флаги и свойства стиля SDK. Это хорошая вещь, и на данном этапе она полностью отсутствует в WiX.
- Похоже, это может быть полезно для создания прототипов и тестирования, очень сильный графический интерфейс и автоматические для часто используемых функций.
- Я скучаю по представлению InstallShield Release с его флагами выпуска и настройками автоматизации сборки, а также другими функциями управления выпуском (которые могут быть улучшены к настоящему времени).
- В целом надежный инструмент, который выглядит наиболее подходящим для разработчиков, ищущих простой способ развертывания своих приложений. Похож на Мудрого в этом отношении.
- Слишком мало практического опыта, чтобы писать гораздо больше. Попробуйте это.
Другие инструменты
- Orca - это бесплатный инструмент Windows SDK, который позволяет открывать, редактировать и в определенной степени сравнивать двоичные файлы MSI. Это также позволяет другие операции, такие как создание файлов преобразования для изменения файлов MSI и некоторые другие технические операции. Базовый инструмент, который мне всегда нравится устанавливать и использовать. Здесь есть более обширный параграф об Orca, где обсуждается его использование (посмотрите вниз). Обычно вам нужно установить 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 - но требуется гораздо больше знаний. Есть кривая обучения, и есть некоторые серьезные ограничения - особенно в отношении GUI на данный момент - но базовая технология очень надежна и бесплатна. И, что немаловажно, есть много других инструментов (список с http://www.installsite.org), которые также могут быть более подходящими для вашей задачи - особенно если это простое приложение, которое просто нуждается в базовых функциях развертывания. Это "несправедливо", что я не предоставил больше информации об этих инструментах, которые вполне способны, но реже используются или установлены.
Я должен прояснить, что я рекомендую WiX для корпоративных команд, поставляющих собственные приложения, потому что они могут использовать гибкость, обеспечиваемую WiX, и у них также будет доступный опыт и технические навыки, чтобы справляться со сложностью WiX. И они могут обучать новых парней, когда это необходимо. Очень важный вопрос. Изучать WiX нетривиально, если вы уже не обладаете достаточными знаниями об установщике Windows - тогда это не сложная задача, но она все равно требует времени, потому что она настолько гибкая и из-за отсутствия лучшего слова: "неудобно" - это как настоящий развитие, вы получили реальный контроль, но должны быть точными. Однажды настроить источник WiX может быть мечтой, чтобы иметь дело с - вы знаете, что происходит.
Подводя итог: если вы мелкий (или крупный) сторонний поставщик, который ищет хороший способ быстрой доставки вашего приложения вашим клиентам, вам, вероятно, выгоднее воспользоваться коммерческим инструментом, призванным обеспечить простоту использования и быстрое решение для реализации. ограниченное количество изменений. В частности, для IIS коммерческие инструменты не смогли обеспечить гибкость, необходимую мне в прошлом. И внутренние команды разработчиков должны по крайней мере попробовать WiX.
Напоследок предостережение: Advanced Installer, InstallShield и мудрый обычно разрешают упаковывать программное обеспечение для виртуализации. Я не знаю никаких функций в WiX для этого на данный момент. Пожалуйста, добавьте комментарии или просто отредактируйте этот пост, если у вас есть информация здесь.
Главный практический совет:
Я обычно использую другие инструменты для прототипирования и WiX для реализации, если у меня есть выбор. Вы можете использовать WiX dark.exe (декомпилятор MSI) для декомпиляции существующего файла MSI. Иногда я реализую что-то в Wise или InstallShield, компилирую MSI и декомпилирую это в формат WiX. Затем я поднимаю разметку WiX и выгружаю в свой основной файл WiX. Работает отлично и обычно очень быстро. Это в сочетании с утилитой heat.exe для автоматического создания компонентов позволило мне упаковать огромный веб-сайт IIS менее чем за 10 минут после некоторых пробных запусков. После этого у меня есть полная настраиваемость, предоставляемая WiX, с простотой использования других инструментов.
Очистка декомпилированного источника - это не пикник, но это и не ракетостроение. Нужны некоторые знания MSI, и вы некоторое время будете "возиться". Имейте в виду, что загрузка пробных версий коммерческих инструментов для создания и декомпиляции файла MSI не рекомендуется. Получающиеся файлы MSI обычно имеют водяные знаки с функциями, которые трудно удалить.
Некоторые ссылки: