Tags: Software-Distribution, Applikations-Virtualisierung
MSIX ist Microsofts neues Paket-Format für die Installation von Software und soll künftig MSI, EXE-Setup und App-V ersetzen. Anwender müssen nicht darauf warten, dass Entwickler ihre Programme in diesem Format bereitstellen. Vielmehr lassen sich bestehende Installer mit dem MSIX Packaging Tool migrieren.
Microsoft nennt eine ganze Reihe von Vorteilen von MSIX, die es zum Paketformat der Wahl machen soll. Dazu zählt, dass Anwendungen abgekapselt vom Betriebssystem in einem Container laufen. Dies soll die Quote der erfolgreichen Installationen erhöhen und ein rückstandsfreies Entfernen gewährleisten.
Packages für die Verteilung via Cloud
Darüber hinaus wurde MSIX mit Blick auf die Distribution von Software über die Cloud entwickelt, also etwa für die Installation über App Stores. Wie bei UWP Apps erfolgt die Installation dabei pro User und orientiert sich somit insgesamt am Modell mobiler Geräte.
Um die Migration zu MSIX zu beschleunigen, überlässt es Microsoft nicht den Entwicklern alleine, die Software in diesem Format bereitzustellen. Mit dem kostenlosen MSIX Packaging Tool können Anwender alle gängigen Setup-Pakete und sogar proprietäre Installations-Scripts konvertieren.
Vorbereitungen für das Repackaging
Bevor man loslegt, sollte man einige Voraussetzungen klären. Dazu gehört vor allem, dass man für das Repackaging eine ähnliche Umgebung einrichtet wie jene, in der die Software später laufen soll.
Dazu gehört, dass das Quellsystem die gleiche Prozessorarchitektur aufweist wie die Zielrechner, also Intel versus ARM und 32- versus 64-Bit. Empfohlen wird eine möglichst frische Installation von Windows, weil das Packaging Tool ähnlich wie der Sequencer von App-V alle Änderungen am System erfasst, welches das alte Setup daran vornimmt.
Zu diesem Zweck bietet Microsoft über die Schnellerstellung in Hyper-V eine virtuelle Maschine mit einer Eval-Version von Windows 10 an, welche auch schon die neueste Version des MSIX Packaging Tool enthält. Hat man für diesen Zweck jedoch selbst eine VM eingerichtet, dann kann man das Tool vom Microsoft Store installieren.
Da es sich um eine Store App handelt und ihre Ausführung administrative Rechte erfordert, sollte man sich mit einem privilegierten Konto an Windows anmelden und das Tool in diesem Kontext installieren.
Neues Paket erstellen
Der Startbildschirm zeigt Symbole für ein neues Paket anlegen, ein bestehendes ändern und den Paket-Editor. Um einen herkömmlichen Installer zu migrieren, klickt man auf Anwendungspaket. Damit startet man einen Wizard, der durch den kompletten Vorgang führt.
Im ersten Schritt legt man fest, ob man das Paket auf dem lokalen, einem entfernten Rechner oder in einer virtuellen Maschine erstellt. In diesem Beispiel wählen wir die erste Option, die wohl auch die häufigste sein wird.
Der zweite Dialog zeigt, ob der Computer für das Erfassen des Pakets vorbereitet ist. Beim ersten Aufruf installiert das Tool den benötigten Treiber und es deaktiviert vorübergehend Windows Update, um das System nicht während der Ausführung des Setup von dieser Seite zu modifizieren.
Anschließend öffnet man das herkömmliche Installationspaket und ergänzt bei Bedarf eventuell vorgesehene Argumente für die Kommandozeile. Diese kann das MSIX Packaging Tool in einem Template speichern, so dass man sie beim wiederholten Erfassen (etwa bei Updates) nicht wieder neu eingeben muss.
Ein wichtiger Aspekt ist das Signieren von MSIX-Paketen, andernfalls lassen sie sich nicht ausführen. Die gängigste Variante wird hier das Signieren mit einem Zertifikat (.pfx) sein, das man in der Regel von einer externen Zertifizierungsstelle erwirbt.
Zertifikat für die Code-Signierung ausstellen
Dient das Installationspaket ausschließlich dem internen Gebrauch, dann kann man ein Zertifikat für die Code-Signierung auf über eine Windows-CA ausstellen. Dazu startet man mmc.exe und fügt unter Datei das Snapin Zertifikate hinzu.
Hier führt man dann im Kontext von Aktueller Benutzer aus dem Menü Aktionen den Befehl Alle Aufgaben => Neues Zertifikat anfordern aus. Dies startet einen Wizard, wo man im ersten Dialog die Zertifikatregistrierungsrichtlinie auswählt, in der Regel ist das jene für das Active Directory.
Anschließend aktiviert man die Vorlage Codesignatur, öffnet dort die Details und klickt auf Eigenschaften. Im daraufhin angezeigten Dialog gibt man unter Antragsteller den Subject Name ein. Danach wechselt man zum Reiter Privater Schlüssel und hakt die Option Privaten Schlüssel exportierbar machen an.
Nachdem man das neue Zertifikat exportiert hat, kann man es im MSIX Packaging Tool öffnen.
Aufzeichnen des Installationsvorgangs
Im nächsten Dialog gibt man Informationen für das Paket ein, darunter den Namen, die Version der Applikation oder den Installationspfad. Klickt man hier auf weiter, dann startet das ursprüngliche Installationsroutine (MSI, EXE, etc.) und das Packaging Tool zeichnet alle sein Aktionen auf.
Dazu gehört das Erfassen sämtlicher entpackter Dateien, um sie in den MSIX-Container zu übernehmen. Außerdem erkennt es alle Schreibvorgänge in die Registry, so dass es diese Einträge in die virtuelle Registrierdatenbank innerhalb des Containers kopieren kann.
Nach Abschluss dieser Phase zeigt das Tool im nächsten Dialog den Namen des installierten Programms an und sieht vor, dass man es von dort startet, um es zusätzlich anzupassen.
Ändert man innerhalb der Software bestimmte Einstellungen, dann werden diese entweder in der Registry oder einer Konfigurationsdatei gespeichert. Der Packager erkennt das und würde die Anpassungen in das Paket aufnehmen.
Als letzten Punkt sieht der Wizard vor, dass man Windows-Services benennt, falls die Anwendung bestimmte davon benötigt und diese aktiviert werden sollen.
Zum Schluss gibt man den Pfad an, unter dem das MSIX gespeichert werden sollte und schließt den Vorgang mit einem Klick auf Erstellen ab.
Paket installieren
Nun sollte das neue Paket bereit sein für die Installation. Unter Umständen muss man in älteren Versionen von Windows 10 dafür noch in der App Einstellungen unter Update und Sicherheit => Für Entwickler das Sideloading von Apps erlauben.
Für die Distribution von MSIX-Paketen sieht Microsoft nicht nur SCCM oder Intune vor, sondern auch den Store für Business oder eine selbst gehostete Website für den Download der Apps.
Täglich Know-how für IT-Pros mit unserem Newsletter
Verwandte Beiträge
- MSIX: Microsofts einheitliches Package-Format für alle Windows-Anwendungen
- AdminStudio 10: Packaging für App-V, Windows-7-Eignung testen
- Vergleich: Anwendungsvirtualisierung versus herkömmliche Installation
- Intune: Installation von kostenloser Standard-Software, Cloud-PKI, Security Copilot
- PowerShellGet-Modul aktualisieren, auf PSResourceGet umsteigen
Weitere Links
3 Kommentare
Soweit ich mich erinnern kann entfällt bei neueren Windows 10 Versionen die Aktivierung des Sideloading.
Ist es auch möglich ein Codesigningzertifikat zu verteilen, ohne den privaten Schlüssel zu verteilen? Hier Verteilung von Zertifikaten und Auto Renewal?
> Soweit ich mich erinnern kann entfällt bei neueren
> Windows 10 Versionen die Aktivierung des Sideloading.
So ist es, habe ich im letzten Absatz erwähnt. Bei 1809 bekam ich noch die Meldung, dass Sideloading aktiviert werden muss.
Für das Signieren braucht man eine .pfx-Datei, wobei man natürlich den Private Key durch ein starkes Passwort schützen sollte. Die Signatur bleibt gültig über das Ablaufdatum des Zertifikats hinaus, wenn man beim Signieren einen Timestamp-Server verwendet.
Danke Wolfgang!