Каковы различия между установщиками MSI и EXE, и какие из них выбрать?
Возможный дубликат:
Каковы конкретные различия между .msi и файлом setup.exe?
Я работаю над установщиком для новой версии моего проекта (С#).
Раньше я использовал Inno Setup для создания файлов .exe
для установки моих проектов на других компьютерах на рабочем месте. Хотя при чтении некоторых руководств я столкнулся с Windows Installer XML, который использует файлы XML для сборки установщика .msi
.
Мой проект будет доступен на сетевом ресурсе, доступ к которому у всех сотрудников будет иметь доступ, чтобы они могли установить программное обеспечение (в настоящее время я также работаю над средством проверки обновлений)
Каковы основные различия между установщиками .exe
и .msi
? Почему я хотел бы выбрать один за другим? Будет ли иметь смысл в моей конкретной среде?
Я нашел некоторую информацию по этому вопросу, но информации было мало.
Ответы
Ответ 1
Я бы не использовал WiX для нового проекта. Я бы использовал "Проект установщика" в Visual Studio для создания MSI. Проект установщика гораздо проще компоновать.
Многие exe-инсталляторы на самом деле являются заглушками или контейнерами, в которых есть MSI, btw.
Я думаю, вы проверили http://en.wikipedia.org/wiki/Windows_Installer?
MSI дает администраторам возможность ограничить установку, переустанавливать установки, изменять или добавлять настраиваемые действия, автоматизировать установки/переустановки/удаления, стандартное ведение журнала и коммутаторы. Он действительно интегрируется в корпоративную ИТ-среду (http://technet.microsoft.com/en-us/library/bb742606.aspx).
Пользовательский установщик может иметь многие из этих функций, но это зависит от пакета установщика.
Ответ 2
Большинство установщиков EXE, доступных сегодня, - это просто заглушки, чтобы убедиться, что на целевой машине имеется достаточно поддержки для запуска MSI, хранящегося в EXE. Они выполняют базовую проверку версий Windows и проверку версии Windows Installer, а затем, по существу, вызывают msiexec и позволяют Windows Installer обрабатывать остальные.
Для очень простой установки проект установщика в Visual Studio может получить вас, но для любой реальной настройки или настройки вам понадобится настоящий редактор MSI. Мы используем WiX и любим его - но это медведь, чтобы учиться. Если у вас есть деньги, вы можете инвестировать в InstallShield, но у него есть собственный набор причуд.
Ответ 3
MSI настраивается, а EXE - нет. Я знаю, что это не отвечает на ваш вопрос напрямую, но я думал, что должен указать на технологию ClickOnce.
MSDN: См. пример здесь.
Проще говоря, приложение ClickOnce любая презентация Windows Фонд, Windows Forms или консоль приложение, опубликованное с использованием ClickOnce технологии. Вы можете опубликовать Приложение ClickOnce в трех разными способами: с веб-страницы, от общий сетевой файл или с носителя таких как CD-ROM. ClickOnce приложение может быть установлено на конце пользовательский компьютер и запускается локально когда компьютер находится в автономном режиме, или он может быть запущен в режиме онлайн без постоянной установки что-либо на компьютере конечного пользователя. Дополнительные сведения см. В разделе Выбор Стратегия развертывания ClickOnce.
Ответ 4
IndigoRose MSI factory чрезвычайно эффективен и намного дешевле, чем InstallShield.
Он использует WiX внутри и позволяет вам изменять файлы XML любым способом. Бутстраппер (.exe, если вы его добавите) имеет мощный скриптовый движок, основанный на Lua, чтобы сделать... ну что угодно.