Since the release of Windows 10, it has been common for organization to try and reduce the footprint of built-in apps (or default apps) in their reference images, or even during bare-metal deployment. Over the years, the community has provided several solutions on how to accomplish this including myself. During this time, I’ve attempted to keep my script updated after each new release of Windows 10. You’ll find the post about the method I’m using in the script and how to use it when creating a reference image here:

Remove Built-in apps when creating a Windows 10 reference image

Now with Windows 10 version 1809 released, it’s time for another update for the remove built-in apps script.

Download script

I’ve made the script available on our GitHub repository along with all the other scripts that we’ve shared, and it’s available on the following URL:

https://github.com/SCConfigMgr/ConfigMgr/blob/master/Operating%20System%20Deployment/Invoke-RemoveBuiltinApps.ps1

What’s new

Below is a list of changes and additions made to the latest version of the script:

  • White list has been split up from this version of the script going forward. Hopefully it will be more visually clear what has been added in terms of white listed built-in apps.
  • The following built-in apps have been added to the white list for Windows 10 version 1809:
    • Microsoft.ScreenSketch
    • Microsoft.HEIFImageExtension
    • Microsoft.VP9VideoExtensions
    • Microsoft.WebMediaExtensions
    • Microsoft.WebpImageExtension

Using the script

Reference the previous instructions from the original post mentioned above. I highly encourage you to also implement the solution at the bottom from Johan’s blog about how to turn of the automatic app updates from the Windows Store. If you intend to use this script for bare-metal deployment using e.g. ConfigMgr, that’s also supported. Simply execute the script after the operating system has been applied after the Setup Windows and ConfigMgr step.

https://deploymentresearch.com/Research/Post/615/Fixing-why-Sysprep-fails-in-Windows-10-due-to-Windows-Store-updates

Below is a few screenshot of how I’m using this script to remove the built-in apps along with Johan’s scripts when creating a reference image using MDT:

Here’s one from when you enable the app updates from Windows Store at the end before creating the WIM file:

And when using the script in ConfigMgr, here’s an example of how that could look:

(4868)

Nickolaj Andersen

Principal Consultant and Enterprise Mobility MVP since 2016. Nickolaj has been in the IT industry for the past 10 years specializing in Enterprise Mobility and Security, Windows devices and deployments including automation. Currently working for TrueSec as a Principal Consultant. Awarded as PowerShell Hero in 2015 by the community for his script and tools contributions. Creator of ConfigMgr Prerequisites Tool, ConfigMgr OSD FrontEnd, ConfigMgr WebService to name a few. Frequent speaker at conferences and user groups.

comments
  • Jeremy
    Posted at 20:44 November 29, 2018
    Jeremy
    Reply
    Author

    Thanks for all your work on these; we’ve been using your scripts for a while now! We used to use a blacklist approach but the whitelist is much better. Starting with 1803 we’ve really struggled to get this script to run consistently (using the ConfigMgr approach in your second example with Windows 10 Education). Because we weren’t sure we also added in the Disable and Enable Windows Store updates scripts in the ConfigMgr approach too. Any thoughts on why this would fail randomly, I’d say at least 35% of the time? If I were to image a machine and run the script after logging into the machine it will fail with the same consistency. The old blacklist method fails off and on as well. I’ve spent so much time on this I’d love any feedback you could give.

    Best Regards,

    Jeremy

    • Nickolaj Andersen
      Posted at 02:17 December 5, 2018
      Nickolaj Andersen
      Reply
      Author

      Hi Jeremy,

      I’ve also seen occasions where it would fail when running it in ConfigMgr, but I’ve not been able to replicate it and troubleshoot it further. Disabling and enabling the store updates is not a requirement though when you’re using this script for operating system deployment, only for then doing a build and capture, either with ConfigMgr or in MDT.

      Regards,
      Nickolaj

      • Jeremy
        Posted at 19:17 December 5, 2018
        Jeremy
        Reply
        Author

        Thanks for letting me know we don’t have to disable and enable store updates when deploying an image from ConfigMgr. We’ll just have to come up with another way to remove store apps.

  • Jeremy
    Posted at 16:42 December 3, 2018
    Jeremy
    Reply
    Author

    I’m having a hard time getting this to work consistently in the ConfigMgr deployment. I have it as one of my steps in the task sequence we image all our machines with and it will work about 30% of the time. It does the same thing if we run the script once we log into the computer. I’ve disabled and enabled Windows Store updates and that doesn’t seem to solve my problem either. This issue started happing with 1803. Before that, we used a blacklist approach and deleted all the apps we specified. I like your method much better since the apps seem to change with each OS revision. Any tips or tricks I could use to figure out what’s going on? Is anyone else having issues?

    Regards,

    Jeremy

  • Leave a Reply to Nickolaj Andersen
    Cancel Reply

    This site uses Akismet to reduce spam. Learn how your comment data is processed.