Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die Möglichkeit, die Erfahrung einer Anwendung anzupassen, ist wichtig, insbesondere für Unternehmen. Wir haben mit IT-Experten gesprochen, und wir wissen, dass das Anpassen von Anwendungen an die Anforderungen des Benutzers für den Wechsel zu Windows 10 von wesentlicher Bedeutung ist. Beim Anpassen von Anwendungen, die mit MSI verpackt werden, ist es gut verstanden, dass IT-Experten das Paket von den Entwicklern erwerben und das Installationsprogramm mit der Anpassung entsprechend ihren Anforderungen erneut verpacken müssen. Dies ist ein kostspieliger Aufwand für Unternehmen. In Zukunft möchten wir die Anpassung und die Hauptanwendung entkoppeln, damit das Erneute Verpacken nicht mehr benötigt wird. Dadurch wird sichergestellt, dass Unternehmen die neuesten Updates von Entwicklern erhalten und gleichzeitig die Kontrolle über ihre Anpassungen behalten.
In Windows 10, Version 1809, wurde ein neuer MSIX-Pakettyp eingeführt, der als Änderungspaket bezeichnet wird. Änderungspakete sind MSIX-Pakete, die Anpassungen speichern. Änderungspakete können auch Plug-Ins/Add-Ons sein, die möglicherweise keinen Aktivierungspunkt haben. IT-Experten können dieses Feature verwenden, um MSIX-Container flexibel zu ändern, sodass Anwendungen von den Anpassungen ihres Unternehmens überlagert werden.
Funktionsweise
Änderungspakete sind für Unternehmen konzipiert, die nicht über den Code der Anwendung verfügen und nur über das Installationsprogramm verfügen. Sie können ein Änderungspaket mithilfe der neuesten Version des MSIX-Pakettools (für Windows 10, Version 1809 oder höher) erstellen. Wenn Sie über den Code für die Anwendung verfügen, können Sie alternativ eine App-Erweiterung erstellen.
Wenn Sie ein Änderungspaket erstellen möchten, das eine strenge Bindung an die Haupt-App aufweist, können Sie die Haupt-App als Abhängigkeit im Manifest des Änderungspakets deklarieren.
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.15063.0"/>
<uap4:MainPackageDependency Name="Main.App"/>
</Dependencies>
Im folgenden Beispiel wird veranschaulicht, wie Sie ein anderes Zertifikat oder einen anderen Herausgeber angeben.
<Dependencies>
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.15063.0"/>
<uap4:MainPackageDependency Name="Main.App" Publisher="CN=Contoso, C=US" />
</Dependencies>
Dies ist eine einfache Konfiguration, wenn die Beziehung zwischen dem Änderungspaket und dem Hauptpaket 1:1 ist. Typische Anpassungen erfordern häufig Registrierungsschlüssel unter HKEY_CURRENT_USER oder HKEY_CURRENT_USERCLASS. In unserem MSIX-Paket haben wir User.dat und Userclass.dat Dateien, um die Registrierungsschlüssel zu erfassen. Sie müssen User.dat erstellen, wenn Sie Registrierungsschlüssel unter HKCU\Software* benötigen (genau wie Registry.dat für HKLM\Software*). Verwenden Sie Userclass.dat, wenn Sie Schlüssel unter HKCU\Sofware\Classes*benötigen.
Hier sind die typischen Methoden zum Erstellen einer .dat Datei:
Verwenden Sie "Regedit", um eine Datei zu erstellen. Erstellen Sie einen Hive in Regedit und fügen Sie die erforderlichen Schlüssel ein. Mit der rechten Maustaste klicken, dann exportieren und als Hive-Datei speichern. Stellen Sie sicher, dass Sie die Datei entweder als User.dat oder Userclass.dat benennen.
Verwenden Sie eine API, um erforderliche Dateien zu erstellen. Sie können die ORSaveHive-Funktion verwenden, um eine .dat Datei zu speichern. Stellen Sie sicher, dass Sie die Datei ether User.dat oder Userclass.dat benennen.
Nachdem Sie die erforderlichen Änderungen vorgenommen haben, können Sie das Änderungspaket wie jedes andere MSIX-Paket erstellen. Anschließend können Sie das Paket mit der aktuellen Bereitstellungskonfiguration implementieren. Wenn Sie Die Haupt-App neu starten, können Sie die Änderungen sehen, die das Änderungspaket vorgenommen hat. Wenn Sie das Änderungspaket entfernen möchten, wird die Haupt-App ohne das Änderungspaket wieder in einen Zustand zurückgesetzt.
Erfahren Sie, welche Änderungspakete auf Ihrem Gerät installiert sind
Mithilfe von PowerShell können Sie installierte Änderungspakete mit dem folgenden Befehl anzeigen.
Get-AppPackage -PackageTypeFilter Optional
Änderungspakete unter Windows 10, Version 1809
Unter Windows 10, Version 1809, können Änderungspakete Konfigurationen enthalten, die in der Registrierung so festgelegt werden müssen, dass das Hauptpaket wie erwartet ausgeführt wird. Die Hauptanwendung nutzt die Registrierung, um zu überprüfen, ob ein Plug-In vorhanden ist. Wenn Sie das Hauptpaket und das Änderungspaket bereitstellen, wird zur Laufzeit die virtuelle Registrierung (VREG) des Hauptpakets und des Änderungspakets angezeigt.
Beachten Sie, dass Ihr Hauptpaket möglicherweise die VREG verwendet, um die folgenden Aktionen auszuführen:
- Anzeigen, wo die Datei (die DLL) des Plug-Ins geladen werden soll. Wenn dies der Fall ist, stellen Sie sicher, dass die Datei Teil des Pakets ist. Dadurch kann das Hauptpaket zur Laufzeit auf die Datei zugreifen.
- Anzeigen, wo der Wert der VREG-Schlüssel angezeigt wird. Ihr Hauptpaket sucht möglicherweise nach einem Wert, der im VREG vorhanden ist. Wenn Sie Ihr Änderungspaket entweder manuell oder mit unserem Tool erstellen, stellen Sie sicher, dass der Wert korrekt ist.
Änderungspakete unter Windows 10, Version 1903 und höher
Die folgenden Features wurden Windows 10, Version 1903, hinzugefügt.
Manifestaktualisierung
Wir haben Unterstützung für das folgende Element zum Manifest des MSIX-Änderungspakets hinzugefügt.
<Properties>
<rescap6:ModificationPackage>true</rescap6:ModificationPackage>
</Properties>
Um sicherzustellen, dass Änderungspakete in Version 1903 oder höher funktionieren, muss das Manifest des Änderungspakets dieses Element enthalten. Dies geschieht für Sie, wenn Sie Ihr MSIX-Änderungspaket mithilfe der Januar-Version des MSIX-Verpackungstools verpacken. Wenn Sie ein Paket mit unserem Tool vor der Veröffentlichung konvertiert haben, können Sie Ihr vorhandenes Paket in unserem Tool bearbeiten, um dieses neue Element hinzuzufügen. Wenn Benutzer das Änderungspaket installieren, werden sie darüber hinaus benachrichtigt, dass das Paket die Hauptanwendung ändern kann.
Wenn Sie ein Änderungspaket verwenden, das vor Version 1903 erstellt wurde, muss das Paketmanifest bearbeitet werden, um das MaxVersionTested
Attribut auf 10.0.18362.0 zu aktualisieren.
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17701.0" MaxVersionTested="10.0.18362.0" />
Erstellen eines Änderungspakets mit dem MSIX Packaging Tool
Sie können ein Änderungspaket mit dem MSIX Packaging Tool erstellen:
Geben Sie das Hauptpaket an. Stellen Sie sicher, dass die MSIX-Version Ihres Hauptpakets auf Ihrem Computer verfügbar ist, auf dem Sie konvertieren. Andernfalls werden wir Sie bitten, den Herausgeber und die Hauptanwendungsinformationen manuell bereitzustellen. Für einige Anpassungen ist es erforderlich, dass die Hauptanwendung auf Ihrem Computer installiert ist.
Ändern Sie das Paket, nachdem es die Konvertierung mithilfe des Paket-Editors durchlaufen hat. In manchen Fällen macht es das Hauptpaket erforderlich, dass das Änderungspaket bestimmte Werte in der virtuellen Registrierung enthält. An dieser Stelle würden Sie das Paket entsprechend bearbeiten.
Erstellen eines Änderungspakets mithilfe von MakeAppx.exe
Sie können ein Änderungspaket manuell erstellen, indem Sie das MakeAppX.exe Tool verwenden, das im Windows 10 SDK enthalten ist.
Geben Sie im Manifest das Hauptpaket an. Fügen Sie den Herausgeber und den Hauptpaketnamen ein.
<Dependencies> <TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17701.0" MaxVersionTested="12.0.0.0"/> <uap4:MainPackageDependency Name="HeadTrax" Publisher="CN=Contoso Software, O=Contoso Corporation, C=US" /> </Dependencies>
Erstellen Sie Registry.dat, User.dat und Userclass.dat, um zu erstellen, welche Registrierungsschlüssel zum Laden des Änderungspakets erforderlich sind. Dies ist nur erforderlich, wenn Sie ihre Hauptanwendung zum Anzeigen benutzerdefinierter Registrierungsschlüssel benötigen. Denken Sie daran, dass, da alles in einem Container ausgeführt wird, zur Laufzeit das Hauptpaket und die virtuellen Register der Änderungspakete zusammengeführt werden, damit das Hauptpaket die virtuellen Register der Änderungspakete einsehen kann.
Dieser Prozess unterstützt auch Dateisystem-Plug-Ins und Anpassungen, solange sich die ausführbare Datei der Hauptanwendung nicht in einem virtuellen Dateisystem (VFS) befindet. Dadurch wird sichergestellt, dass das Hauptpaket das gesamte virtuelle Dateisystem des Hauptpakets und des Änderungspakets erhält.
Installieren von Änderungspaketen auf dem Computer
Das Installieren von Änderungspaketen auf dem Computer folgt anderen Installationskonventionen. Beachten Sie, dass Sie beim Installieren des Pakets möglicherweise den Parameter "-OptionalPackagePath " verwenden möchten.
Konfliktlösung
Bei mehreren Änderungspaketen, die versuchen, denselben Wert zu ändern, wird der Konflikt gelöst, indem die alphabetische Reihenfolge der Namen der Änderungspakete berücksichtigt wird.