Установите программное обеспечение: выберите .msi или .exe?
39069
Rabarberski
Некоторые сайты программного обеспечения позволяют загружать их программное обеспечение для установки в виде MSI-файла или EXE-файла. Когда предоставляется опция, какую из них выбрать для загрузки программного обеспечения, а именно: каковы преимущества использования MSI-файла вместо установщика (.exe)?
Я понимаю разницу между ними в том, что MSI-файл является установочным пакетом, который будет обрабатываться исполняемым файлом установщика Windows. И файл .exe представляет собой исполняемый файл, содержащий установщик и установочные файлы. Но в чем реальная выгода выбора .msi вместо .exe. В итоге результат тот же. Или нет?
Как правило, Windows работает вечно, обычно я использую .exe для небольших программных пакетов, которые быстро устанавливаются самостоятельно.
The Green Frog 14 лет назад
3
«Как правило, окнам нужно что-то делать вечно»? Смелое и неверное утверждение, если я когда-либо видел его.
caliban 14 лет назад
7
Файлы MSI имеют много преимуществ для корпоративного использования: [преимущества развертывания MSI] (http://serverfault.com/a/274609/20599)
Stein Åsmul 9 лет назад
2
[Более подробный ответ о переполнении стека] (http://stackoverflow.com/questions/1789530/what-are-the-specific-differences-between-msi-and-setup-exe-file)
johntrepreneur 9 лет назад
0
В Stackoverflow есть вопрос об аналогичных строках: [Среды установки приложений Windows] (http://stackoverflow.com/questions/1284825/windows-application-installer-frameworks). Я думаю, это имеет хорошие моменты для вас.
nik 14 лет назад
1
Обычно MSI-пакеты предоставляются системным администраторам, которым необходимо развернуть программное обеспечение на нескольких терминалах по сети.
Результаты ничем не отличаются от использования исполняемого файла, но MSI-пакеты иногда имеют дополнительные параметры, такие как автоматическая или предварительно настроенная установка.
Если вы не системный администратор, используйте исполняемый файл.
Исполняемый файл часто меньше из-за лучшего сжатия, но, как правило, просто содержит и упаковывает MSI, автоматически распаковывает его и запускает установку в интерактивном режиме / пользователь выбирает режим параметров ...
Oskar Duveborn 14 лет назад
4
MSI не просто для системных администраторов - хотя, конечно, они ими пользуются; Я обнаружил, что они, как правило, удаляются более полно при удалении по сравнению с их братьями из EXE (и нет - я не знаю почему)
warren 14 лет назад
3
MSI не являются более безопасными, так как .exe может быть чем угодно, но .msi определенно является установочным пакетом?
Dave Cousineau 9 лет назад
1
@Sahuagin Это может быть установочный пакет, который устанавливает вредоносное ПО.
thameera 9 лет назад
0
@thameera все еще кажется большой разницей. MSI не будет иметь мастера, в то время как исполняемый будет просто выполнить? MSI не будет автоматически удаляться?
Dave Cousineau 9 лет назад
1
@Sahuagin Действительный пункт. Но из того, что я узнал из ответов, MSI обычно является просто оберткой для exe.
thameera 9 лет назад
0
@thameera Некоторые установщики программ для x64 (например, 7-Zip) * только * предоставляются в виде MSI.
cybermonkey 8 лет назад
0
[** У MSI есть некоторые важные корпоративные преимущества **] (https://serverfault.com/questions/11670/the-corporate-benefits-of-using-msi-files/274609#274609). У разработчиков часто возникают проблемы с MSI из-за его экзотического дизайна в определенных областях, но для корпоративного развертывания файлы MSI намного превосходят предыдущие технологии развертывания.
Stein Åsmul 6 лет назад
0
4
Файлы MSI являются реляционными базами данных и используются службой установки Microsoft. Этот сервис устанавливает приложения на компьютер. MSI-файлы предлагают гораздо большую гибкость для установки и обслуживания приложений, чем когда-либо могли обеспечить более старые исполняемые программы со скриптами, поэтому MSI-файлы являются текущим рекомендуемым методом установки в Windows.
Как это означает, что MSI является рекомендуемым (читай: лучшим) методом?
hasen 14 лет назад
3
3
William Hilsum
Реального преимущества .exe над MSI нет, кроме того, что если вы используете Winrar (или некоторые другие), вы обычно можете извлечь все файлы из MSI-файла без необходимости устанавливать что-либо.
Вы имели в виду .exe во втором предложении? Потому что распакованные .exe обычно имеют более чистую структуру файлов, чем .msi (на самом деле их можно открыть в диспетчере архивов).
user 5 лет назад
0
1
Millhouse
Иногда, особенно при установке приложений .NET, есть Setup.exe и MSI. В случае .NET программа Setup.exe может проверить, чтобы убедиться, что в системе установлены все необходимые предварительные условия (например, .NET Frameowork и т. Д.) Для запуска приложения.
Если в вашей системе отсутствует одно из этих предварительных условий, она может предложить вам установить их в первую очередь перед запуском приложения, что может избавить от успешной установки приложения, но затем не запустить из-за отсутствующей библиотеки или инфраструктуры.
Если у вас есть все необходимые условия, Setup.exe просто запускает MSI-файл.
То есть, вы говорите, что MSI не может проверить наличие необходимого программного обеспечения и предложить пользователю установить его?
Rabarberski 14 лет назад
0
MSI может проверить наличие необходимого программного обеспечения, просто будет немного сложнее в коде. В зависимости от того, какие инструменты использовались для создания установщика, Setup.exe может автоматически генерироваться некоторыми инструментами разработки MS, что облегчает жизнь программисту. Вот некоторые подробности, которые могут помочь: http://msdn.microsoft.com/en-us/magazine/cc163899.aspx
Millhouse 14 лет назад
2
1
Nicolas Raoul
Среди других тонких отличий:
Один файл MSI может иметь только одну локаль для мастера установки ( подробности ). Это может быть причиной распространения приложения в формате .exe, что является более гибким.
Итак, если важен язык мастера установки, возможно, вам повезет больше с .exe
Я уверен, что это главная очевидная причина, и она противоречит приведенным выше предположениям, что сисадмины используют это! С глобальными devops, имеет больше смысла для системных администраторов, чтобы загрузить EXE. Черт возьми, за то, что все так запутано.
killjoy 5 лет назад
0
0
hasen
Я лично предпочитаю .zip (или equivelant), если доступно. Так что я могу извлечь его там, где захочу, чтобы я точно знал, что изменилось в моей системе (так как я тот, кто изменил это).
Идеальной ситуацией была бы портативная программа.
Хотя, если бы мне пришлось выбирать между exe и msi, я бы выбрал exe. Просто так ..
Обычно MSI-файлы тратят много времени на бесполезный поиск конфигураций и тому подобного. exe-файлы тоже могут это делать, но больше похоже, что exe-файл просто извлечет файлы и установит ярлыки в меню «Пуск».
-2
Wilson
ИМХО, MSI более безопасен в том смысле, что когда вы заразились вирусом, ваши exe-файлы могут заразиться, так как один из способов распространения вируса - блокировка его кода внутри исполняемых файлов. У них меньше шансов сделать это с файлом MSI.