Sep 10, 2014. Sep 06, 2020.
-->Applies to: Windows 10
The following types of apps run on Windows 10:
- Windows apps - introduced in Windows 8, primarily installed from the Store app.
- Universal Windows Platform (UWP) apps - designed to work across platforms, can be installed on multiple platforms including Windows client, Windows Phone, and Xbox. All UWP apps are also Windows apps, but not all Windows apps are UWP apps.
- 'Win32' apps - traditional Windows applications.
Digging into the Windows apps, there are two categories:
- Apps - All other apps, installed in C:Program FilesWindowsApps. There are two classes of apps:
- Provisioned: Installed in user account the first time you sign in with a new user account.
- Installed: Installed as part of the OS.
- System apps - Apps that are installed in the C:Windows* directory. These apps are integral to the OS.
The following tables list the system apps, installed Windows apps, and provisioned Windows apps in a standard Windows 10 Enterprise installation. (If you have a custom image, your specific apps might differ.) The tables list the app, the full name, show the app's status in Windows 10 version 1709, 1803, and 1809 and indicate whether an app can be uninstalled through the UI.
Some of the apps show up in multiple tables - that's because their status changed between versions. Make sure to check the version column for the version you are currently running.
Provisioned Windows apps
You can list all provisioned Windows apps with this PowerShell command:
Here are the provisioned Windows apps in Windows 10 versions 1803, 1809, 1903, and 1909.
Package name | App name | 1803 | 1809 | 1903 | 1909 | Uninstall through UI? |
---|---|---|---|---|---|---|
Microsoft.3DBuilder | 3D Builder | Yes | ||||
Microsoft.BingWeather | MSN Weather | x | x | x | x | Yes |
Microsoft.DesktopAppInstaller | App Installer | x | x | x | x | Via Settings App |
Microsoft.GetHelp | Get Help | x | x | x | x | No |
Microsoft.Getstarted | Microsoft Tips | x | x | x | x | No |
Microsoft.HEIFImageExtension | HEIF Image Extensions | x | x | x | No | |
Microsoft.Messaging | Microsoft Messaging | x | x | x | x | No |
Microsoft.Microsoft3DViewer | Mixed Reality Viewer | x | x | x | x | No |
Microsoft.MicrosoftOfficeHub | Office | x | x | x | x | Yes |
Microsoft.MicrosoftSolitaireCollection | Microsoft Solitaire Collection | x | x | x | x | Yes |
Microsoft.MicrosoftStickyNotes | Microsoft Sticky Notes | x | x | x | x | No |
Microsoft.MixedReality.Portal | Mixed Reality Portal | x | x | x | No | |
Microsoft.MSPaint | Paint 3D | x | x | x | x | No |
Microsoft.Office.OneNote | OneNote for Windows 10 | x | x | x | x | Yes |
Microsoft.OneConnect | Mobile Plans | x | x | x | x | No |
Microsoft.Outlook.DesktopIntegrationServices | x | |||||
Microsoft.People | Microsoft People | x | x | x | x | No |
Microsoft.Print3D | Print 3D | x | x | x | x | No |
Microsoft.ScreenSketch | Snip & Sketch | x | x | x | No | |
Microsoft.SkypeApp | Skype | x | x | x | x | No |
Microsoft.StorePurchaseApp | Store Purchase App | x | x | x | x | No |
Microsoft.VP9VideoExtensions | x | x | x | No | ||
Microsoft.Wallet | Microsoft Pay | x | x | x | x | No |
Microsoft.WebMediaExtensions | Web Media Extensions | x | x | x | x | No |
Microsoft.WebpImageExtension | Webp Image Extension | x | x | x | No | |
Microsoft.Windows.Photos | Microsoft Photos | x | x | x | x | No |
Microsoft.WindowsAlarms | Windows Alarms & Clock | x | x | x | x | No |
Microsoft.WindowsCalculator | Windows Calculator | x | x | x | x | No |
Microsoft.WindowsCamera | Windows Camera | x | x | x | x | No |
microsoft.windowscommunicationsapps | Mail and Calendar | x | x | x | x | No |
Microsoft.WindowsFeedbackHub | Feedback Hub | x | x | x | x | No |
Microsoft.WindowsMaps | Windows Maps | x | x | x | x | No |
Microsoft.WindowsSoundRecorder | Windows Voice Recorder | x | x | x | x | No |
Microsoft.WindowsStore | Microsoft Store | x | x | x | x | No |
Microsoft.Xbox.TCUI | Xbox Live in-game experience | x | x | x | x | No |
Microsoft.XboxApp | Xbox Console Companion | x | x | x | x | No |
Microsoft.XboxGameOverlay | Xbox Game Bar Plugin | x | x | x | x | No |
Microsoft.XboxGamingOverlay | Xbox Game Bar | x | x | x | x | No |
Microsoft.XboxIdentityProvider | Xbox Identity Provider | x | x | x | x | No |
Microsoft.XboxSpeechToTextOverlay | x | x | x | x | No | |
Microsoft.YourPhone | Your Phone | x | x | x | No | |
Microsoft.ZuneMusic | Groove Music | x | x | x | x | No |
Microsoft.ZuneVideo | Movies & TV | x | x | x | x | No |
Note
The Store app can't be removed. If you want to remove and reinstall the Store app, you can only bring Store back by either restoring your system from a backup or resetting your system. Instead of removing the Store app, you should use group policies to hide or disable it.
System apps
System apps are integral to the operating system. Here are the typical system apps in Windows 10 versions 1709, 1803, and 1809.
You can list all system apps with this PowerShell command:
Name | Package Name | 1709 | 1803 | 1809 | Uninstall through UI? |
---|---|---|---|---|---|
File Picker | 1527c705-839a-4832-9118-54d4Bd6a0c89 | x | x | No | |
File Explorer | c5e2524a-ea46-4f67-841f-6a9465d9d515 | x | x | No | |
App Resolver UX | E2A4F912-2574-4A75-9BB0-0D023378592B | x | x | No | |
Add Suggested Folders To Library | F46D4000-FD22-4DB4-AC8E-4E1DDDE828FE | x | x | No | |
InputApp | x | x | x | No | |
Microsoft.AAD.Broker.Plugin | Microsoft.AAD.Broker.Plugin | x | x | x | No |
Microsoft.AccountsControl | Microsoft.AccountsControl | x | x | x | No |
Microsoft.AsyncTextService | Microsoft.AsyncTextService | x | x | No | |
Hello setup UI | Microsoft.BioEnrollment | x | x | x | No |
Microsoft.CredDialogHost | x | x | x | No | |
Microsoft.ECApp | x | x | x | No | |
Microsoft.LockApp | x | x | x | No | |
Microsoft Edge | Microsoft.MicrosoftEdge | x | x | x | No |
Microsoft.MicrosoftEdgeDevToolsClient | x | x | No | ||
Microsoft.PPIProjection | x | x | x | No | |
Microsoft.Win32WebViewHost | x | x | No | ||
Microsoft.Windows.Apprep.ChxApp | x | x | x | No | |
Microsoft.Windows.AssignedAccessLockApp | x | x | x | No | |
Microsoft.Windows.CapturePicker | x | x | No | ||
Microsoft.Windows.CloudExperienceHost | x | x | x | No | |
Microsoft.Windows.ContentDeliveryManager | x | x | x | No | |
Cortana | Microsoft.Windows.Cortana | x | x | x | No |
Microsoft.Windows.Holographic.FirstRun | x | x | No | ||
Microsoft.Windows.OOBENetworkCaptivePort | x | x | x | No | |
Microsoft.Windows.OOBENetworkConnectionFlow | x | x | x | No | |
Microsoft.Windows.ParentalControls | x | x | x | No | |
People Hub | Microsoft.Windows.PeopleExperienceHost | x | x | x | No |
Microsoft.Windows.PinningConfirmationDialog | x | x | x | No | |
Microsoft.Windows.SecHealthUI | x | x | x | No | |
Microsoft.Windows.SecondaryTileExperience | x | No | |||
Microsoft.Windows.SecureAssessmentBrowser | x | x | x | No | |
Start | Microsoft.Windows.ShellExperienceHost | x | x | x | No |
Windows Feedback | Microsoft.WindowsFeedback | * | No | ||
Microsoft.XboxGameCallableUI | x | x | x | No | |
Windows.CBSPreview | x | x | No | ||
Contact Support* | Windows.ContactSupport | * | Via Settings App | ||
Settings | Windows.immersivecontrolpanel | x | x | x | No |
Print 3D | Windows.Print3D | x | x | Yes | |
Print UI | Windows.PrintDialog | x | x | x | No |
Note
The Contact Support app changed to Get Help in version 1709. Get Help is a provisioned app (instead of system app like Contact Support).
Installed Windows apps
![Windowsapps Windowsapps](/uploads/1/3/3/8/133817149/693991899.png)
Here are the typical installed Windows apps in Windows 10 versions 1709, 1803, and 1809.
Name | Full name | 1709 | 1803 | 1809 | Uninstall through UI? |
---|---|---|---|---|---|
Remote Desktop | Microsoft.RemoteDesktop | x | x | Yes | |
Code Writer | ActiproSoftwareLLC.562882FEEB491 | x | x | Yes | |
Eclipse Manager | 46928bounde.EclipseManager | x | x | Yes | |
Pandora | PandoraMediaInc.29680B314EFC2 | x | x | Yes | |
Photoshop Express | AdobeSystemIncorporated. AdobePhotoshop | x | x | Yes | |
Duolingo | D5EA27B7.Duolingo- LearnLanguagesforFree | x | x | Yes | |
Network Speed Test | Microsoft.NetworkSpeedTest | x | x | x | Yes |
News | Microsoft.BingNews | x | x | x | Yes |
Sway | Microsoft.Office.Sway | x | x | x | Yes |
Microsoft.Advertising | Microsoft.Advertising.Xaml | x | x | x | Yes |
Microsoft.NET.Native.Framework.1.2 | x | x | Yes | ||
Microsoft.NET.Native.Framework.1.3 | x | x | Yes | ||
Microsoft.NET.Native.Framework.1.6 | x | x | x | Yes | |
Microsoft.NET.Native.Framework.1.7 | x | x | Yes | ||
Microsoft.NET.Native.Framework.2.0 | x | x | Yes | ||
Microsoft.NET.Native.Runtime.1.1 | x | x | Yes | ||
Microsoft.NET.Native.Runtime.1.3 | x | Yes | |||
Microsoft.NET.Native.Runtime.1.4 | x | x | Yes | ||
Microsoft.NET.Native.Runtime.1.6 | x | x | x | Yes | |
Microsoft.NET.Native.Runtime.1.7 | x | x | x | Yes | |
Microsoft.NET.Native.Runtime.2.0 | x | x | Yes | ||
Microsoft.Services.Store.Engagement | x | x | Yes | ||
Microsoft.VCLibs.120.00 | x | x | Yes | ||
Microsoft.VCLibs.140.00 | x | x | x | Yes | |
Microsoft.VCLibs.120.00.Universal | x | Yes | |||
Microsoft.VCLibs.140.00.UWPDesktop | x | Yes |
This article provides a deeper dive on what happens to files and registry entries when you create a Windows app package for your desktop application.
A key goal of a modern package is to separate application state from system state as much as possible while maintaining compatibility with other apps. Windows 10 accomplishes this by placing the application inside a MSIX package, and then detecting and redirecting some changes it makes to the file system and registry at runtime.
Packages that you create for your desktop application are desktop-only, full-trust applications and are not virtualized or sandboxed. This allows them to interact with other apps the same way classic desktop applications do.
Installation
App packages are installed under C:Program FilesWindowsAppspackage_name, with the executable titled app_name.exe. Each package folder contains a manifest (named AppxManifest.xml) that contains a special XML namespace for packaged apps. Inside that manifest file is an
<EntryPoint>
element, which references the full-trust app. When that application is launched, it does not run inside an app container, but instead it runs as the user as it normally would.After deployment, package files are marked read-only and heavily locked down by the operating system. Windows prevents apps from launching if these files are tampered with.
File system
The OS supports different levels of file system operations for packaged desktop applications, depending on the folder location.
AppData operations on Windows 10, version 1903 and later
All newly created files and folders in the user's AppData folder (e.g., C:Usersuser_nameAppData) are written to a private per-user, per-app location but merged at runtime to appear in the real AppData location. This allows some degree of state separation for artifacts that are only used by the application itself, and this enables the system to clean up those files when the application is uninstalled. Modifications to existing files under the user's AppData folder is allowed to provide a higher degree of compatibility and interactivity between applications and the OS. This reduces filesystem “rot” because the OS is aware of every file or directory change made by an application. State separation also allows packaged desktop applications to pick up where a non-packaged version of the same application left off. Note that the OS does not support a virtual file system (VFS) folder for the user's AppData folder.
AppData operations on Windows 10, version 1809 and earlier
All writes to the user's AppData folder (e.g., C:Usersuser_nameAppData), including create, delete, and update, are copied on write to a private per-user, per-app location. This creates the illusion that the packaged application is editing the real AppData when it is actually modifying a private copy. By redirecting writes this way, the system can track all file modifications made by the app. This allows the system to clean up those files when the application is uninstalled, thus reducing system 'rot' and providing a better application removal experience for the user.
Other folders
In addition to redirecting AppData, Windows' well-known folders (System32, Program Files (x86), etc) are dynamically merged with corresponding directories in the app package. Each package contains a folder named 'VFS' at its root. Any reads of directories or files in the VFS directory are merged at runtime with their respective native counterparts. For example, an application could contain C:Program FilesWindowsAppspackage_nameVFSSystemX86vc10.dll as part of its app package, but the file would appear to be installed at C:WindowsSystem32vc10.dll. This maintains compatibility with desktop applications that may expect files to live in non-package locations.
Writes to files/folders in the app package are not allowed. Writes to files and folders that are not part of the package are ignored by the OS and are allowed as long as the user has permission.
Common operations
This short reference table shows common file system operations and how the OS handles them.
Operation | Result | Example |
---|---|---|
Read or enumerate a well-known Windows file or folder | A dynamic merge of C:Program Filespackage_nameVFSwell_known_folder with the local system counterpart. | Reading C:WindowsSystem32 returns the contents of C:WindowsSystem32 plus the contents of C:Program FilesWindowsAppspackage_nameVFSSystemX86. |
Write under AppData | Windows 10, version 1903 and later: New files and folders created under the following directories are redirected to a per-user, per-package private location:
Windows 10, version 1809 and earlier: Copy-on-written to a per-user, per-app location. | AppData is typically C:Usersuser_nameAppData. |
Write inside the package | Not allowed. The package is read-only. | Writes under C:Program FilesWindowsAppspackage_name are not allowed. |
Writes outside the package | Allowed if the user has permissions. | A write to C:WindowsSystem32foo.dll is allowed if the package does not contain C:Program FilesWindowsAppspackage_nameVFSSystemX86foo.dll and the user has permissions. |
Packaged VFS locations
The following table shows where files shipping as part of your package are overlaid on the system for the app. Your application will perceive these files to be in the listed system locations, when in fact they are in the redirected locations inside C:Program FilesWindowsAppspackage_nameVFS. The FOLDERID locations are from the KNOWNFOLDERID constants.
System Location | Redirected Location (Under [PackageRoot]VFS) | Valid on architectures |
---|---|---|
FOLDERID_SystemX86 | SystemX86 | x86, amd64 |
FOLDERID_System | SystemX64 | amd64 |
FOLDERID_ProgramFilesX86 | ProgramFilesX86 | x86, amd6 |
FOLDERID_ProgramFilesX64 | ProgramFilesX64 | amd64 |
FOLDERID_ProgramFilesCommonX86 | ProgramFilesCommonX86 | x86, amd64 |
FOLDERID_ProgramFilesCommonX64 | ProgramFilesCommonX64 | amd64 |
FOLDERID_Windows | Windows | x86, amd64 |
FOLDERID_ProgramData | Common AppData | x86, amd64 |
FOLDERID_Systemcatroot | AppVSystem32Catroot | x86, amd64 |
FOLDERID_Systemcatroot2 | AppVSystem32Catroot2 | x86, amd64 |
FOLDERID_Systemdriversetc | AppVSystem32DriversEtc | x86, amd64 |
FOLDERID_Systemdriverstore | AppVSystem32Driverstore | x86, amd64 |
FOLDERID_Systemlogfiles | AppVSystem32Logfiles | x86, amd64 |
FOLDERID_Systemspool | AppVSystem32Spool | x86, amd64 |
Registry
App packages contain a registry.dat file, which serves as the logical equivalent of HKLMSoftware in the real registry. At runtime, this virtual registry merges the contents of this hive into the native system hive to provide a singular view of both. For example, if registry.dat contains a single key 'Foo', then a read of HKLMSoftware at runtime will also appear to contain 'Foo' (in addition to all the native system keys).
Only keys under HKLMSoftware are part of the package; keys under HKCU or other parts of the registry are not. Writes to keys or values in the package are not allowed. Writes to keys or values not part of the package are allowed as long as the user has permission.
All writes under HKCU are copy-on-written to a private per-user, per-app location. Traditionally, uninstallers are unable to clean HKEY_CURRENT_USER because the registry data for logged out users is unmounted and unavailable.
All writes are kept during package upgrade and only deleted when the application is removed entirely.
Common operations
This short reference table shows common registry operations and how the OS handles them.
Operation | Result | Example |
---|---|---|
Read or enumerate HKLMSoftware | A dynamic merge of the package hive with the local system counterpart. | If registry.dat contains a single key 'Foo,' at runtime a read of HKLMSoftware will show the contents of both HKLMSoftware plus HKLMSoftwareFoo. |
Writes under HKCU | Copy-on-written to a per-user, per-app private location. | The same as AppData for files. |
Writes inside the package. | Not allowed. The package is read-only. | Writes under HKLMSoftware are not allowed if a corresponding key/value exist in the package hive. |
Writes outside the package | Ignored by the OS. Allowed if the user has permissions. | Writes under HKLMSoftware are allowed as long as a corresponding key/value does not exist in the package hive and the user has the correct access permissions. |
Windows App Store Windows 7
Uninstallation
Windowsapps Folder Permissions
When a package is uninstalled by the user, all files and folders located under C:Program FilesWindowsAppspackage_name are removed, as well as any redirected writes to AppData or the registry that were captured during the packaging process.