Table of Contents
In early builds of Windows 10, no user interface option was provided in the Settings to remove a preinstalled Store app (UWP). On those builds, the only way was to use PowerShell to remove or reinstall the apps.
Later Windows 10 builds facilitated the reset or uninstallation of apps via Apps & Features in Settings. However, for some preinstalled (inbox) apps like Photos, the Uninstall option is disabled. Only the Repair and Reset buttons are enabled.
This post tells you how to uninstall a preinstalled app using different methods in Windows 10 and 11.
Uninstall Preinstalled Apps Using PowerShell
To remove a preinstalled app or any Store app for that matter using PowerShell, you’d use the Get-AppxPackage and Remove-AppxPackage commands.
Before we begin, we’ll list out all apps have been installed in our system. In the below output, we have 104 preinstalled apps. And we need to take attention when removing the apps with IsFramework is True.
PS C:\> Get-AppxPackage | select Name, IsFramework, Status
Name IsFramework Status
---- ----------- ------
MicrosoftWindows.UndockedDevKit False Ok
Microsoft.UI.Xaml.CBS True Ok
Microsoft.NET.Native.Framework.2.2 True Ok
Microsoft.NET.Native.Runtime.2.2 True Ok
Microsoft.VCLibs.140.00 True Ok
MicrosoftWindows.Client.WebExperience False Ok
Microsoft.ZuneMusic False Ok
Microsoft.Paint False Ok
Microsoft.Windows.CapturePicker False Ok
...
PS C:\> (Get-AppxPackage).Count
104
List out all framework packages. To make sure the system runs without any unexpected issues, the framework apps shouldn’t be uninstalled (? = Where-Object).
PS C:\> Get-AppxPackage | ? { $_.IsFramework -eq 'true'} | select Name, IsFramework, NonRemovable
Name IsFramework NonRemovable
---- ----------- ------------
Microsoft.UI.Xaml.CBS True True
Microsoft.NET.Native.Framework.2.2 True False
Microsoft.NET.Native.Runtime.2.2 True False
Microsoft.VCLibs.140.00 True False
Microsoft.VCLibs.140.00 True False
Microsoft.VCLibs.140.00 True False
Microsoft.NET.Native.Runtime.2.2 True False
Microsoft.NET.Native.Framework.2.2 True False
Microsoft.UI.Xaml.2.4 True False
Microsoft.UI.Xaml.2.7 True False
Microsoft.UI.Xaml.2.7 True False
Microsoft.VCLibs.140.00.UWPDesktop True False
Microsoft.VCLibs.140.00.UWPDesktop True False
Microsoft.UI.Xaml.2.8 True False
Microsoft.UI.Xaml.2.8 True False
Microsoft.WindowsAppRuntime.1.3 True False
Microsoft.WindowsAppRuntime.1.3 True False
From the result of the Get-AppxPackage cmdlet, we can get the details of an app from its name. For example, we use below command to to get details of the Phone app.
PS C:\> Get-AppxPackage *phone*
Name : Microsoft.YourPhone
Publisher : CN=Microsoft Corporation, O=Microsoft Corporation, C=US
Architecture : X64
Version : 0.23072.153.0
PackageFullName : Microsoft.YourPhone_0.23072.153.0_x64__8wekyb3d8bbwe
InstallLocation : C:\Program Files\WindowsApps\Microsoft.YourPhone_x64__8wekyb3d8bbwe
IsFramework : False
PackageFamilyName : Microsoft.YourPhone_8wekyb3d8bbwe
PublisherId : 8wekyb3d8bbwe
Dependencies : {Microsoft.VCLibs.140.00_14.0.32530.0_x64__8wekyb3d8bbwe,
Microsoft.YourPhone_0.23072.153.0_neutral_split.scale-100_8wekyb3d8bbwe}
Status : Ok
To remove a single app, use Get-AppxPackage cmdlet to a pipeline the remove it using Remove-AppxPackage cmdlet. For example, run below command to remove the Phone app.
Get-AppxPackage *phone* | Remove-AppxPackage
To uninstall an app for all users, include the -allusers switch as below. Note that PowerShell needs to be run as administrator in order to use the -allusers switch.
Get-AppxPackage *phone* -AllUsers | Remove-AppxPackage
To uninstall multiple apps at once, you can use the below script. Put the app names into an array then remove them using the PowerShell loop.
$apps = (
'Microsoft.YourPhone',
'Microsoft.BingWeather',
'Microsoft.Paint',
'Microsoft.ScreenSketch',
'Microsoft.PowerAutomateDesktop',
'Microsoft.ZuneMusic',
'Microsoft.WindowsAlarms',
'Microsoft.WindowsMaps'
)
foreach ($app in $apps) {
Get-AppPackage $app | Remove-AppPackage
}
Alternatively, we can uninstall multiple apps at a time with GUI. To do it, we use the Out-GridView output option in PowerShell as follows:
Get-AppxPackage | Out-GridView -Passthru | Remove-AppXPackage
You’ll see the PowerShell grid view control showing all the apps. Select one or multiple apps from the list and click OK. All the selected apps will be uninstalled automatically. You don’t have to type their names.
Using this method, you don’t need to type the app name or create a PowerShell script manually. All you need to do is running a single command. Then all selected apps get uninstalled automatically.
Restore or Reinstall Preinstalled Apps Using PowerShell
Anytime, if you need to reinstall an app, use the below example to reinstall the Your Phone app.
Get-AppxPackage *phone* | Foreach {
Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"
}
Or you can restore or reinstall all preinstalled built-in apps at once using the below script. This time when run the Get-AppxPackage, we don’t need to filter anything.
Get-AppxPackage | Foreach {
Add-AppxPackage -DisableDevelopmentMode -Register "$($_.InstallLocation)\AppXManifest.xml"
}
Uninstall Preinstalled Apps Using Store Apps Uninstaller (GUI)
For users who don’t prefer running PowerShell commands, there is a tool called Store Apps Uninstaller. Store Apps Uninstaller is a WinForms tool that lets you remove any preinstalled app or 3rd party Store apps quickly, without you needing to mess around with PowerShell manually.
1️⃣ You need to open Windows PowerShell (Terminal) as administrator and run the following command:
irm bonguides.com/pw/removestoreapps | iex
2️⃣ Click Get Store Apps button to populate the list box. Then, select the app from the list and click Remove Selected Apps.
Not a reader? Watch this related video tutorial: