Software installieren: Wählen Sie .msi oder .exe?

34

Bei einigen Software-Sites kann die Software heruntergeladen und entweder als MSI-Datei oder als EXE-Datei installiert werden. Wenn die Option gegeben ist, welche sollte man zum Installieren von Software herunterladen, dh: Was sind die Vorteile der Verwendung der MSI-Datei anstelle des Installationsprogramms (.exe)?

Ich verstehe den Unterschied zwischen beiden, dass die MSI-Datei ein Installationspaket ist, das von einem ausführbaren Windows-Installationsprogramm verarbeitet wird. Die EXE-Datei ist eine ausführbare Datei, die das Installationsprogramm und die Installationsdateien enthält. Aber was ist der eigentliche Vorteil der Wahl von .msi über .exe. Am Ende ist das Ergebnis dasselbe. Oder nicht?

Rabarberski
quelle
3
In der Regel dauert es ewig, bis Windows funktioniert. Normalerweise arbeite ich mit der EXE-Datei für kleinere Softwarepakete, die sich von selbst schnell installieren lassen.
Der grüne Frosch
1
Bei Stackoverflow gibt es eine ähnliche Frage: Windows Application Installer Frameworks . Ich denke, es hat gute Punkte für dich.
Nik
7
"Generell dauert es ewig, bis Windows funktioniert"? Eine kühne und unwahre Aussage, wenn ich jemals eine gesehen habe.
Caliban
2
MSI-Dateien haben viele Vorteile für den Unternehmensgebrauch: Vorteile der MSI-Bereitstellung
Stein Åsmul

Antworten:

22

Normalerweise werden msi-Pakete für Systemadministratoren bereitgestellt, die die Software auf mehreren Terminals über ein Netzwerk bereitstellen müssen.

Die Ergebnisse unterscheiden sich nicht von der Verwendung einer ausführbaren Datei, aber MSI-Pakete bieten manchmal zusätzliche Optionen, z. B. das Ausführen von unbeaufsichtigten oder vorkonfigurierten Installationen.

Wenn Sie kein Systemadministrator sind, verwenden Sie die ausführbare Datei.

Kaliban
quelle
4
Die ausführbare Datei ist oft kleiner durch bessere Kompression als gut, aber neigt dazu, nur die msi enthält und wickelt, sich automatisch zu extrahieren und die Installation in interactive / Benutzer wählen Optionen Modus Brennen ...
Oskar Duveborn
5
MSIs sind nicht nur für Systemadministratoren gedacht - obwohl sie mit Sicherheit von ihnen verwendet werden. Ich habe sie dazu neigen , gefunden mehr vollständig entfernt werden , wenn eine Deinstallation im Vergleich zu ihren EXE Brüder tun (und nicht - ich weiß nicht , warum)
warren
1
Sind MSIs nicht sicherer, da eine .exe alles sein könnte, aber eine .msi definitiv ein Installationspaket ist?
Dave Cousineau
@ Sahuagin Es könnte sich um ein Installationspaket handeln, das Malware installiert.
Thameera
1
@ Thameera scheint immer noch ein großer Unterschied zu sein. Wird eine MSI keinen Assistenten haben, während eine Exe nur direkt ausgeführt wird? Kann eine MSI nicht automatisch deinstalliert werden?
Dave Cousineau
5

MSI-Dateien sind relationale Datenbanken und werden vom Microsoft-Installationsdienst verwendet. Dieser Dienst installiert Anwendungen auf dem Computer. MSI-Dateien bieten weitaus mehr Flexibilität bei der Installation und Wartung von Anwendungen, als dies mit älteren ausführbaren Skriptprogrammen jemals möglich gewesen wäre. Daher sind MSI-Dateien die derzeit empfohlene Methode für Installationen unter Windows.


quelle
3
Wie impliziert das, dass MSI die empfohlene (read: best) Methode ist?
Hasen
3

Es gibt keinen wirklichen Vorteil von .exe gegenüber .msi, außer wenn Sie Winrar (oder einige andere) verwenden, können Sie normalerweise alle Dateien aus einer .msi-Datei extrahieren, ohne etwas installieren zu müssen.

William Hilsum
quelle
Meinten Sie im zweiten Satz .exe? Weil entpackte .exe normalerweise eine sauberere Dateistruktur haben als die von .msi (beide können tatsächlich in einem Archivmanager geöffnet werden).
Benutzer
1

Vor allem bei der Installation von .NET-Anwendungen gibt es manchmal eine Setup.exe und eine .msi-Datei. Im Falle von .NET kann Setup.exe überprüfen, ob auf dem System alle erforderlichen Voraussetzungen für die Ausführung der Anwendung installiert sind (z. B. .NET FrameWork usw.).

Wenn auf Ihrem System eine dieser Voraussetzungen fehlt, werden Sie möglicherweise aufgefordert, diese zuerst zu installieren, bevor Sie die Anwendung ausführen. Dies kann dazu führen, dass die App nicht erfolgreich installiert wird, kann jedoch aufgrund einer fehlenden Bibliothek oder eines fehlenden Frameworks nicht ausgeführt werden.

Wenn Sie alle Voraussetzungen haben, startet die Setup.exe nur die .msi

Mühle
quelle
Sie sagen also, eine MSI kann nicht nach erforderlicher Software suchen und den Benutzer auffordern, sie zu installieren?
Rabarberski
2
Eine msi könnte nach erforderlicher Software suchen, der Code wäre jedoch etwas komplizierter. Abhängig davon, welche Tools für die Erstellung des Installationsprogramms verwendet wurden, kann die Datei Setup.exe von einigen MS-Entwicklungstools automatisch generiert werden, was dem Codierer das Leben erleichtert. Hier sind einige Details, die helfen könnten: msdn.microsoft.com/en-us/magazine/cc163899.aspx
Millhouse
1

Unter anderen subtilen Unterschieden:

Eine einzelne MSI-Datei kann nur ein einziges Gebietsschema für den Installationsassistenten enthalten ( Details ).
Dies kann ein Grund sein, eine App als .exe zu verteilen, was flexibler ist.

Wenn die Sprache des Installationsassistenten wichtig ist, haben Sie möglicherweise mehr Glück mit der EXE-Datei

Nicolas Raoul
quelle
Ziemlich sicher, dass dies der offensichtliche Hauptgrund ist, und widerspricht den obigen Vorschlägen, die Sysadmins verwenden! Bei globalen Entwicklern ist es für Systemadministratoren sinnvoller, die EXE-Datei herunterzuladen. Verdammte MS, weil sie die Dinge so verwirrend macht.
Killjoy
0

Ich persönlich bevorzuge .zip (oder gleichwertig), falls verfügbar. So kann ich es extrahieren, wo immer ich will, damit ich genau weiß, was sich in meinem System geändert hat (da ich derjenige bin, der es geändert hat).

Die ideale Situation wäre ein portables Programm.

Wenn ich zwischen exe und msi wählen müsste, würde ich exe wählen. Nur weil ..

Normalerweise verbringen msi-Dateien viel Zeit damit, nach Konfigurationen und ähnlichen Dingen zu suchen. exe kann das auch, aber es ist eher so, dass eine exe nur irgendwo Dateien extrahiert und Startmenü-Verknüpfungen installiert.

hasen
quelle
-2

IMHO, MSI ist sicherer in dem Sinne, dass Ihre exe-Dateien infiziert werden können, wenn Sie mit einem Virus infiziert wurden, da eine der Möglichkeiten der Virusverbreitung darin besteht, den Code in ausführbaren Dateien zu speichern. Dies ist bei MSI-Dateien weniger wahrscheinlich.

Wilson
quelle