Entfernen Sie unerwünschte Windows 10 Apps mit PowerShell

Windows 10 enthält eine Reihe von integrierten Apps, die von grundlegenden Apps wie Taschenrechner und Wetter bis hin zu mehr aufgabenorientierten Apps wie Mail und Fotos reichen. Während diese integrierten Apps für die meisten Situationen in Ordnung sind, können sie in einer geschäftlichen Umgebung unangemessen, überflüssig oder nicht unterstützt sein. Sehr oft stellen diese Apps ein Sicherheitsrisiko dar. Deshalb erfahren Sie in diesem Beitrag, wie Sie Windows 10-Apps mit PowerShell entfernen können.

Das Problem ist, dass Microsoft es nicht einfach macht, einige dieser Apps zu deinstallieren. Es gibt keine Deinstallations-Schaltfläche bei der Deinstallation über normale Methoden. Die integrierten Apps müssen über PowerShell deinstalliert werden.

Haftungsausschluss: Deinstallieren Sie nicht alle Windows 10-Apps. Viele von ihnen werden für die „Erfahrung“ von Windows 10 benötigt, und andere, wie das .NET-Framework, werden für andere Programme benötigt. Wählen Sie sorgfältig aus, welche Anwendungen deinstalliert werden sollen. Sie können jedoch alle Anwendungen erneut installieren, und am Ende dieses Artikels finden Sie den PowerShell-Befehl dafür.

Auffinden von Windows 10-Apps mit PowerShell

Eigentlich handelt es sich um zwei verschiedene Arten von Anwendungen, mit denen wir arbeiten werden.

  • AppX-Pakete – Anwendungen, die mit dem Betriebssystem installiert sind
  • AppX-bereitgestellte Pakete – Anwendungen, die als Teil des Benutzerprofil-Einrichtungsvorgangs beim ersten Mal installiert werden.

Der erste Schritt besteht darin, eine Bestandsaufnahme der installierten Apps zu erhalten. Starten Sie dazu PowerShell mit erhöhten Rechten und führen Sie den Befehl Get-AppxPackage aus. Dies gibt alle auf Windows 10 installierten AppX-Pakete zurück.

PS C:\> Get-AppxPackage

Name              : Microsoft.NET.Native.Framework.1.6
Publisher         : CN=Microsoft Corporation, O=Microsoft Corporation, L=Redmond, S=Washington, C=US
Architecture      : X64
ResourceId        :
Version           : 1.6.24903.0
PackageFullName   : Microsoft.NET.Native.Framework.1.6_1.6.24903.0_x64__8wekyb3d8bbwe
InstallLocation   : C:\Program Files\WindowsApps\Microsoft.NET.Native.Framework.1.6_1.6.24903.0_x64__8wekyb3d8bbwe
IsFramework       : True
PackageFamilyName : Microsoft.NET.Native.Framework.1.6_8wekyb3d8bbwe
PublisherId       : 8wekyb3d8bbwe
IsResourcePackage : False
IsBundle          : False
IsDevelopmentMode : False
IsPartiallyStaged : False
SignatureKind     : Store
Status            : Ok
--snip--

Die bereitgestellten Pakete haben einen etwas anderen Befehl und benötigen auch den Online-Parameter. Der Online-Parameter ruft Pakete vom aktuellen Online-Betriebssystem ab, im Gegensatz zu einer Bilddatei, die sich in einem lokalen Verzeichnis befindet. Dies zeigt eine Liste aller Details zu jedem Paket an.

PS C:\> Get-AppxProvisionedPackage -Online


DisplayName  : Microsoft.3DBuilder
Version      : 16.1.1431.0
Architecture : neutral
ResourceId   : ~
PackageName  : Microsoft.3DBuilder_16.1.1431.0_neutral_~_8wekyb3d8bbwe
Regions      :

DisplayName  : Microsoft.BingWeather
Version      : 4.31.11905.0
Architecture : neutral
ResourceId   : ~
PackageName  : Microsoft.BingWeather_4.31.11905.0_neutral_~_8wekyb3d8bbwe
Regions      :
--snip--

Eingrenzung der App-Listings

Beide dieser Befehle erzeugen recht ausführliche Listen, und alles, was Sie interessiert, ist der Name des Pakets für die Appx-Pakete und der Anzeigename für die bereitgestellten Pakete, wie unten gezeigt.

Details of Get-AppxPackage listing
Listing for get-appxprovisionedpackage

Um die Dinge etwas einfacher zu machen, leiten Sie die Ergebnisse durch Select-Object und wählen Sie die Name– und die Anzeigename-Eigenschaften aus. Dies gibt Ihnen eine Liste wie die folgende. Diese Liste ist einfacher zu bearbeiten.

Get-AppxPackage | Select-Object Name
Output of get-appxpackage | select object name

Jetzt können Sie sehen, welche Windows 10-Apps Sie entfernen möchten. Zu diesem Zeitpunkt müssen Sie alle Namen der Pakete auflisten, die Sie entfernen möchten. Eine Möglichkeit, dies zu tun, besteht darin, die Windows 10-Apps, an denen Sie interessiert sind, zu kopieren und einzufügen und auf diese Weise eine Liste zu erstellen. Ein Trick, den ich verwende, ist, die Ergebnisse in einer Textdatei zu speichern und diese Datei dann in Visual Studio Code zu öffnen. Zum Beispiel:

Get-AppxPackage | Select-object name | Out-File apps.txt | code apps.txt

In Ihrem externen Editor beginnen Sie mit dem Aufbau eines Arrays von Apps, die entfernt werden sollen.

$ProvisionedAppPackageNames = @()

Jetzt, da Sie die Liste haben, können Sie beginnen, das PowerShell-Skript zu erstellen.

Entfernen von Windows 10-Apps mit PowerShell

Du solltest jetzt ein Array in deinem Editor haben, das die Namen aller AppX-Pakete enthält, die du entfernen möchtest. Ich habe unten ein Beispiel erstellt.

$ProvisionedAppPackageNames = @(
    "Microsoft.BingFinance"
    "Microsoft.BingNews"
    "Microsoft.BingSports"
    "Microsoft.BingWeather"
    "Microsoft.MicrosoftOfficeHub"
    "Microsoft.Getstarted"
    "microsoft.windowscommunicationsapps" # Mail, Kalender
    "Microsoft.Office.OneNote"
    "Microsoft.People"
    "Microsoft.SkypeApp"
    "Microsoft.XboxApp"
    "Microsoft.ZuneMusic"
    "Microsoft.ZuneVideo"
)

Mit dem Array, das mit den spezifischen Anwendungen gefüllt ist, die entfernt werden sollen, kannst du nun die foreach-Schleife einrichten, um durch jedes Paket zu gehen und es mit dem Remove-AppXProvisionedPackage-Cmdlet und dem Remove-AppXPackage-Cmdlet zu deinstallieren.

foreach ($ProvisionedAppName in $ProvisionedAppPackageNames) {
    Get-AppxPackage -Name $ProvisionedAppName -AllUsers | Remove-AppxPackage
    Get-AppXProvisionedPackage -Online | Where-Object DisplayName -EQ $ProvisionedAppName | Remove-AppxProvisionedPackage -Online
}

Wenn du aus irgendeinem Grund alle Anwendungen neu installieren möchtest, kannst du immer das Add-AppXPackage-Cmdlet verwenden, um die Windows 10-App erneut zu registrieren, indem du die Anwendungsmanifest-XML-Datei wie unten gezeigt angibst.

Get-AppxPackage -AllUsers | Foreach {
    Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"
}

Zusammenfassung

Auch wenn es Microsoft nicht einfach macht, Windows 10-Apps zu deinstallieren, siehst du, dass du immer PowerShell verwenden kannst!

Source:
https://adamtheautomator.com/remove-windows-10-apps/