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.
Durch das Entfernen eines MSIX-Pakets für einen Benutzer werden die bereitgestellten Dateien nicht immer sofort gelöscht. Windows verwaltet bereitgestellte Pakete, indem nachverfolgt wird, ob Benutzer, andere Pakete oder ausgeführte Prozesse immer noch darauf verweisen.
Verwenden Sie beim Beschreiben der Paketlebensdauer die folgenden Begriffe:
- Staging: Platzieren Sie die Nutzlast eines Pakets in einem von Windows verwalteten Installationsspeicher.
- Register: Stellen Sie einem Benutzer ein bereitgestelltes Paket zur Verfügung und erstellen Sie seine benutzerspezifischen Integrationen.
- Entfernen oder Aufheben der Registrierung: Entfernen Sie die Registrierung und Integrationen eines Benutzers.
- Destage: Löschen Sie die bereitgestellte Paketnutzlast aus dem Speicher.
Eine Entfernung kann ein Paket deregistrieren, ohne es sofort auszulagern.
Starke Referenzen
Windows kann ein Paket nicht destagen, während ein starker Verweis verbleibt. Zu den allgemeinen aussagekräftigen Referenzen gehören:
- Die explizite Paketregistrierung eines Benutzers.
- Bereitstellung, die das Paket benutzern zur Verfügung stellt.
- Eine statische Abhängigkeit, die über
PackageDependencydeklariert wird. - Eine Hostlaufzeitabhängigkeit.
- Eine persistente dynamische Abhängigkeit, die nur das Paket erfüllen kann.
- Ein Prozess, der derzeit Paketinhalte verwendet.
- Eine System-PIN.
- Unified Update Platform (UUP)-Produktmitgliedschaft.
Frameworkpakete verbleiben in der Regel im Staging, da andere Pakete von ihnen abhängig sind. Mehrere Framework-Paketversionen können nebeneinander bleiben, während Anwendungen zwischen Versionen wechseln.
Schwache Verweise
Ein schwacher Verweis hält ein Paket nicht eigenständig bereitgestellt. Ressourcenpaketbeziehungen sind das primäre Beispiel. Wenn nur schwache Referenzen verbleiben, kann Windows das Paket und seine schwachen Abhängigkeiten entfernen.
Was bei der Deinstallation passiert
Wenn Sie ein Paket entfernen, entfernt Windows zuerst die anwendbare Benutzerregistrierung und benutzerspezifische Integrationen. Anschließend wird ausgewertet, ob starke Referenzen bleiben:
- Wenn ein starker Verweis verbleibt, bleibt das Paket im Bereitstellungszustand.
- Wenn keine starken Verweise verbleiben, wird das Paket für das Destaging freigegeben.
- Windows entfernt die Payload, wenn die Bereitstellung das nächste Mal ausgewertet wird, und entfernt das nicht referenzierte Paket.
Destaging kann nach Abschluss des Entfernungsvorgangs auftreten. Einige Verweisänderungen erfolgen außerhalb eines Bereitstellungsvorgangs, sodass die Nutzlastbereinigung nicht immer unmittelbar ist.
Wenn ein Prozess das Paket verwendet, fordert das Entfernen normalerweise das Herunterfahren der Anwendung an. Rufen Sie PackageManager.RemovePackageAsync mit RemovalOptions.DeferRemovalWhenPackagesAreInUse auf, um zu verhindern, dass der Vorgang unterbrochen wird. Windows schließt das Entfernen ab, sobald das Paket nicht mehr verwendet wird.
PowerShell-Verhalten
Remove-AppxPackage entfernt eine Registrierung. Verwenden Sie das Fehlen einer Benutzerregistrierung nicht als Nachweis, dass Windows bereits jede bereitgestellte Datei gelöscht hat.
Verwenden Sie Get-AppxPackage -AllUsers und Bereitstellungsbefehle beim Diagnostizieren von Referenzen, die von anderen Benutzern oder von der Gerätebereitstellung gehalten werden. Das Entfernen eines bereitgestellten Pakets wirkt sich auf zukünftige Registrierungen aus, entfernt jedoch keine Registrierungen, die bereits für Benutzer vorhanden sind.