Ein Überblick über die wichtigsten Gemeinsamkeiten und Unterschiede von MSI und MSIX sowie deren Vor- und Nachteile.
Unternehmen weltweit unterliegen derzeit weitreichenden Veränderungen: Sowohl das Management und die Führungskräfte wie auch die IT-Teams und die verschiedenen Geschäftsbereiche treiben die digitale Transformation voran. Die Folgen: Schrittweise, aber häufigere Software-Upgrades, eine stärkere Automatisierung und mehr Self-Service bei der Zentralisierung von IT-Diensten. Während MSIX alle diese Anforderungen besser als jede andere Paketierungstechnologie erfüllt, hält sich MSI mit seinen zahlreichen Vorteilen, die kein anderer Pakettyp überbieten kann, aber nach wie vor über Wasser.
Gemeinsam mit unserem Partner PACE Suite haben wir nachfolgend eine ultimative Übersicht zu den Vorteilen, Nachteilen und Unterschieden zwischen MSI und MSIX erstellt.
Was ist MSI?
Windows Installer, auch bekannt als MSI, ist eine Microsoft-Technologie, die mit Office 2000 eingeführt wurde, um mehr Kohärenz im Bereich der Anwendungsbereitstellung und -verwaltung unter Windows zu schaffen.
Damit umfasst MSI-Paketierung zum einen die Konvertierung von Installationsprogrammen, die Windows Installer nicht verwenden und zum anderen die Anpassung von Installationsprogrammen, die die Technologie bereits verwenden.
Grundsätzlich ist eine typische MSI-Datei eine Datenbank, die alle notwendigen Informationen enthält, um die eine Anwendung ordnungsgemäss auf einem Desktop oder Server zu installieren.
Vorteile von MSI
- Self-Healing: MSI-Pakete sind in der Lage, fehlende und beschädigte Dateien wiederherzustellen. Durch die Nutzung dieser zusätzlichen Funktionen und gewonnenen Effizienz können Unternehmen mit niedrigeren Gesamtbetriebskosten kalkulieren.
- Geringe Einschränkungen bei Low-Level-Änderungen, die eine einfache und reibungslose Integration notwendiger Elemente in das System ermöglichen – MSI ermöglicht die Installation von Low-Level-Treibern und allen Integrationen auf dieser Ebene.
- Einheitliche Standards für unbeaufsichtigte Installationen von Paketen und mit unterschiedlichen Einstellungen.
- Erleichterte Verwaltung von Paket-Upgrades und -Replacements.
- Breite Unterstützung für verschiedene Windows-Versionen.
- Flächendeckende Akzeptanz von allen wichtigen Softwareverteilsytemen.
- On-Demand-Installation, die bei Bedarf die Installation von Anwendungen über Shortcuts ermöglicht und den Speicherplatz auf der Festplatte optimiert.
- Die Verwaltung gemeinsamer Ressourcen verhindert das Löschen von Dateien, die von anderen Anwendungen verwendet werden.
- Mit Hilfe von Patches können Dateien aktualisiert werden, ohne das Paket vollständig neu installieren zu müssen.
- MSI ist ein leistungsfähiges Instrument für die Installation von Win32-Anwendungen mit all seinen Shared Components und den zusammenhängenden Systemintegrationen.
Nachteile von MSI
- Beschränkungen der Dateigrösse: MSI wurde in den 90er-Jahren entwickelt und definiert 2 GB pro Datei als Beschränkung für Components (ein groses MATLAB-Paket mit allen Add-ons kann damit beispielsweise nicht installiert werden).
- Sicherheitsprobleme: Die Ermöglichung von Low-Level-Interaktionen ist gleichzeitig eines der grössten Sicherheitsprobleme der Anwendungspaketierung.
- Nicht obligatorische Validierung der Signatur: Pakete können ohne Signaturen installiert werden, d. h. sie können etwa unbemerkte Malware enthalten und die Systeme nach der Installation erheblich beschädigen.
- Probleme bei der Installation von MSP (Windows Installer Patches): Neue Versionen der Pakete funktionieren möglicherweise nicht richtig, wenn zuvor Windows-Patches installiert wurden.
- Der Windows S Mode unterstützt MSI nicht (als Nicht-Windows-Store-App); in Zukunft könnten weitere Windows-Betriebssystemversionen die Unterstützung von MSI gar einstellen.
- Komplexität: Um ein MSI mit all seinen grossartigen Funktionen wie Self-Healing, Installation on Demand oder Rollback-Funktionen zu erstellen, ist sind fachkundige und gut geschulte Packaging Engineers eine Notwendigkeit. Eine ungenügende Umsetzung kann zu unerwünschten Nebeneffekten wie einem Loop von Self-Repairs durch das Starten verschiedener Produkte mit denselben Shared Components oder nicht funktionierenden Einstiegspunkten führen.
- MSI wurde für Win32-Anwendungen erstellt und entwickelt.
Was ist MSIX?
2018 wurde MSIX von Microsoft als neues universelles Paketformat für Windows-10-Apps mit späterer Unterstützung auf Desktop-, Mobil- und anderen Windows 10-Geräten angekündigt. MSIX ist ein neues, einheitliches Paketierungsformat, mit dem Unternehmen sichere und leistungsstarke Anwendungen erstellen können. Es führt die Anwendung innerhalb eines isolierten MSIX-Containers aus, der eine sichere und zuverlässige Anwendungsleistung über den gesamten Lebenszyklus ermöglicht und eine saubere Deinstallation bietet. Das MSIX-Paket hat eine sehr ähnliche Paketstruktur, ein ähnliches Manifest und ein ähnliches Verhalten wie das APPx-Format. Im Gegensatz zu APPx bietet MSIX aber eine bessere Unterstützung für Win 32-Anwendungen.
MSIX ist eine junge Technologie, die ihre Eigenheiten, einige Mängel und einige schwerwiegende Einschränkungen mit sich bringt. Letztlich ist MSIX aber die Zukunft der Anwendungspaketierung.
Vorteile von MSIX
- Da sich eine MSIX-Anwendung in einem virtuellen Anwendungscontainer befindet, wird eine strikte Isolierung zwischen der Anwendung und dem Betriebssystem gewährleistet.
- Mit MSIX kann von einer vorhersehbaren, vereinfachten Bereitstellung und sauberen Deinstallation für Endbenutzer profitiert werden. Damit sind keine komplexen Skripte oder Tabellen nötig.
- Ein Schema zur Optimierung des Speicherplatzes für Unternehmen: MSIX verhindert die Duplizierung von Dateien in verschiedenen Anwendungen, da das Windows-Betriebssystem die gemeinsam genutzten Dateien verwaltet und Updates keine Auswirkungen auf andere Anwendungen haben, die die Datei gemeinsam nutzen.
- Eine saubere Deinstallation ist auch dann gewährleistet, wenn die Plattform App-übergreifend freigegebene Dateien verwaltet.
- Bessere Netzwerkoptimierungsfunktionen für Streaming-Installationen und App-Updates, da MSIX-Dateien die Belastung der Netzwerkbandbreite verringern, indem nur der 64k-Block heruntergeladen wird. MSIX ist damit für moderne Systeme und die Cloud konzipiert.
- Die MSIX-Plattform führt ein Inventar der Anwendungen, um alle Änderungen zu verfolgen, und lädt lediglich die Elemente, die benötigt werden.
- Beseitigung von DLLHell und WinROT, Entkopplung von Betriebssystem-Updates, App-Updates und Anpassungen sowie Containerisierung.
Nachteile von MSIX
Einige der Nachteile der Verwendung von MSIX sind:
- Strenge Beschränkungen für Low-Level-Änderungen im System (keine Möglichkeit, Treiber zu installieren).
- Anwendungen auszuführen, die einen Administrator-Zugang erfordern, ist nicht möglich.
Falls einer der unten aufgeführten Punkte zutrifft, gibt es möglicherweise Probleme mit MSIX, die gelöst werden müssen:
- Application Modules werden „in-process“ in Prozesse geladen, die nicht zur betreffenden Windows-Anwendung gehören.
- Eine Anwendung benötigt Command-Line-Befehle
- Eine Anwendung schreibt in die Registry oder in den AppData-Ordner, um Daten mit einer anderen Anwendung zu teilen
- Das aktuelle Verzeichnis wird von der betreffenden Anwendung verwendet
- Eine Anwendung ändert den HKEY_LOCAL_MACHINE Registry Hive
- Eine Anwendung schreibt in das Installationsverzeichnis einer Anwendung
- Eine Abhängigkeit im Ordner System32/SysWOW64 wird von der Anwendung verwendet
Trotz der vorhandenen Einschränkungen steigen viele Software-Entwickler auf das neue Paketformat um und veröffentlichen ihre Anwendungen vermehrt als MSIX.
Übersicht: Die Unterschiede zwischen MSI- und MSIX-Paketen
Mit PACE Suite kann sowohl mit MSI- als auch mit MSIX-Formaten gearbeitet werden. Der blitzschnelle MSI-Generator ermöglicht effizientes Capturing und das Repaketieren von bestehenden Installationen in MSI und MSIX.
Testen Sie das App-Packaging-Tool PACE Suite 3 Wochen lang kostenlos, um den grösstmöglichen Nutzen aus der Paketierung zu ziehen. Hier geht’s zur kostenlosen Testversion von PACE.