Tag 1:
Was ist MSIX?
- Die Geschichte hinter MSIX und den Modern Applications
- Anwendung und Vergleich von MSIX zu anderen Technologien
- Paketaufbau - Generelle Funktion und Filtertreiber
- Einschränkungen (Treiber, Dienste) - Paketdateien: VFS, VREG
- Wie werden MSIX-Pakete im Betriebssystem integriert (Global, Per User)
- Paket-ID – PowerShell Cmdlets zur Verteilung und Anzeige
- Unterschiede MSIX zu AppX - Codesignaturen im Paket
- Übung: Paketverteilung mit der PowerShell - Verteilungsoptimierung
MSIX Client Integration (Speicherorte, Benutzerprofil) –
- MSIX und AppX Gruppenrichtlinien
- Paket-Reparaturmechanismen im Benutzerkontext (Cmdlets)
- Übung: Gruppenrichtlinien für den Kurs erstellen
Abhängigkeiten im MSIX-Paket
- Abhängigkeiten im Paket - MSIX und AppXBundles
- Verteilung von Paketen mit Abhängigkeiten
AppInstaller und MSIX
- Was ist der AppInstaller?
- Abhängigkeiten lösen mit AppInstaller (Bundles)
- Richtlinien für den AppInstaller
- Offline-Installation des AppInstallers für Windows Server
- Bestandteile des AppInstallers – Paketupdates mit dem AppInstaller
- Winget als Bestandteil des AppInstallers
- Metadefinitionen von Winget
- AppInstaller-Steuerungsdatei „.appinstaller“ - Updates mit dem AppInstaller
- Übung: Paketupdate mit dem AppInstaller
Wichtige Tools
- Tools für MSIX (für die Teilnehmer: MSIX Hero oder PowerShell)
- MSIX Commander
MSIX und Codesignaturen
- Was sind Zertifikate? - Was sind Code-Signing-Zertifikate?
- Wie werden MSIX-Pakete digital signiert und welche Möglichkeiten gibt es?
- Nutzung eines Timestamps für Zertifikate
- Übung: Self-Signed-Certificate für die Übungen mit PowerShell erstellen
MSIX Paketierungsumgebung
- Wie wird eine solide Umgebung zur Paketierung erstellt?
- Übung: Anpassung für eine Paketierungsumgebung
- Assistent für eine Paketierungsumgebung in Hyper-V
Tag 2:
Das MSIX Packaging Tool
- Voraussetzungen, Installation
- Installation aus dem Microsoft Store
- MSIX Packaging Tool Offline-Installation
- Übung: Installation des MSIX Packaging Tools, Vorbereitungen zur Paketerstellung
- Einstellungen im Packaging Tool
- Best Practices für die Paketierung - Troubleshooting im MSIX Packaging Tool
- Übung: Erstellung eines einfachen Pakets
- MSIX-Paket editieren und nachbearbeiten
Alternativen zum MSIX Packaging Tool
- Installation des Advanced Installer Express aus dem Store
- Optional: Offline-Installation mit PowerShell
- Funktionen im Advanced Installer Express und Vorteile für die Paketierung
MSIX Modification Package bzw. Änderungspakete
- Was ist ein Modification Package?
- Unterschiedliche Benutzerkonfigurationen für eine Software
- Fragestellung: Unterschiedliche Pakete oder Customizing auf Paketebene für
Anwendungsänderungen? - Verteilung von Modification Packages „Per User“
- Übung: Erstellung und Verteilung eines Modification Packages (Optional mit PowerShell)
MSIX-Paket-Update
- Was ist bei einem Update-Paket zu beachten?
- Übung: Erstellung und Verteilung eines Update-Pakets (Optional mit PowerShell)
- Zero-Downtime-Vorgehensweise
Tag 3:
Paketkonvertierung und Automatisierung
- Konvertieren von App-V-Paketen nach MSIX
- Einschränkungen bei der Konvertierung von App-V
Paketierungsautomatisierung
- Konfigurationsdatei des MSIX Packaging Tools
- Remote-Paketierung mit dem Packaging Tool
- Automatisierung der Paketerstellung mit PowerShell
- Übung: Automatisierte Paketerstellung - Signieren über die Befehlszeile
- Packen und Entpacken von MSIX-Paketen über die Kommandozeile - Automatisierung der Paketkonvertierung
- Optional Evergreen und Nevergreen – Paketierungs- und Installationsframeworks mit PowerShell
Das AppxManifest
- Grundlegender Aufbau und Funktion des Manifests
- Basisdaten Anwendungsname, Version und ID: Grundlegende Metadaten der Anwendung wie DisplayName, Version, Description.
- ShellExtensions im Paket
- Working Directory
- Klassische Verknüpfungen (seit 22H2)
- Execution Alias - Alternative Datenablage für MSIX-Pakete
- File-Type Associations
- App Services
- Übung: Paketerstellung mit Execution Alias (Java)
MSIX Packaging Support Framework (PSF)
- PSF-Schreibrechte: System, Root – Umgebungsvariablen
- PowerShell-Skripte im Paket - Beschreibung der Möglichkeiten
- Reg-Legacy Fixup
- Übung (optional): Umsetzung mit wenig Aufwand über Advanced Installer Express
MSIX und die PowerShell im Detail
- Übersicht der Cmdlets
- Starten eines Prozesses in einem MSIX-Paket
- Übung: Starten einer MSIX-Applikation von der Befehlszeile
Troubleshooting auf dem Endgerät
- MSIX-Tools (PSF Tooling, MSIX Commander, MSIX Hero)
- Starten einer PowerShell im MSIX-Kontext - Ereignisprotokolle
- PSF Monitor
- Übung: PSF Monitor in der Praxis
- Praxisbeispiele: fehlerhafte Installation, Abhängigkeitsprobleme, Zertifikatsfehler
Tag 4:
MSIX AppAttach für Terminalserver
- Was ist MSIX AppAttach und welche Vorteile hat es?
- Integration von AppAttach in Terminalserver- und VDI-Umgebungen
- Wie erstelle ich ein AppAttach-Paket?
- Übung: Erstellung eines AppAttach-Pakets
- Übung: Verteilung eines AppAttach-Pakets mit der PowerShell
Das AppxManifest (Teil 2)
- Firewall-Einstellungen im Paket
- Publisher und Zertifikatsinformationen: Angaben zum Herausgeber und dem verwendeten Zertifikat. Package Integrity und Austausch gegen generell andere Zertifikate.
- Fonts: Einbinden von benutzerdefinierten Schriften (Fonts), die mit der Anwendung bereitgestellt werden.
- Notewenige MSIX Capabilities wie internetClient
- (Optional) Background Tasks und Trigger
- UriScheme: Konfiguriert das Verhalten der Anwendung, wenn ein bestimmtes URI-Schema verwendet wird.
- COM: Registrierung von COM-Komponenten
- Konfiguration von Suchpfaden
- Package Dependencies in Manifest
- Übung: Setzen von Firewall regeln im Paket
Package Support Framework (Teil 2)
- Parameter für Anwendungen
- Mehrere Links für eine Anwendung
- Das Electron Fixup
- Suchpfade: der PSF Weg
- Aktivieren des PSF-Monitors und Tracing
- Übung: PowerShell-Skript im Paket
- Übung: Tracing mit DebugView
MSIX-Shared Containers
- Was ist ein Shared Container?
- Paketieren für Shared-Containers
- Aufbau der Konfigurationsdatei für einen Shared-Container
- Erstellen und Bereitstellung eines Shared Containers mit der PowerShell (für eine Java Anwendung)
Tag 5:
Deployment und Verteilung von MSIX-Paketen
- Deployment mit Intune (nur Beschreibung, was ist zu beachten)
- Deployment mit der PowerShell
- Übung: Deployment aus einem Share mit PowerShell
- Integration in das PowerShell Deployment psappdeploytoolkit.com
MSIX Core
- Was kann MSIX Core?
- Einsatzmöglichkeiten
PSF Automation mit dem MISXForcelets PowerShell Module
- Automation des PSF Injection
- Erstellung von PSF Regeln mit PowerShell
- Automation von Lese/Schreibregeln
- Vorkonfigurierte Fixes in den PSF Forcelets
- Übung: Automation eines PSF Fix mit den MSIXForcelets
- Optional: Automatische Erstellung eines Anwendungsportals (Beispielsweise für Schulanwendungen). Installation auf Knopfdruck.
Extrahieren von Paketen aus dem Store
- Welche Möglichkeiten gibt es, ein MSIX/Appx Paket aus dem Store zu extrahieren
- Welche Fallen lauern
- Der Sichere Weg
- Alternative: MSIX mit Winget
Best Practices für den Einsatz von MSIX im Unternehmen
- Integration von MSIX in eine bestehende Unternehmensinfrastruktur
- Verwaltung von MSIX-Paketen im Unternehmenskontext: Wie man MSIX-Pakete über den gesamten Lebenszyklus hinweg verwaltet (Erstellung, Update, Decommissioning).
- Versionsverwaltung und Update-Strategien für MSIX
- Rollback-Mechanismen und Notfallstrategien bei fehlerhaften Updates.
Ausblick
- Weitere Tools zur Paketerstellung