Windows 10 1709 Fall Creators Update, AppX, and Sysprep
-
There was already a thread started on how sysprep keeps failing out in Windows 10 (1709). But it wasn’t quite asking what I am wondering. So in an effort to not repeat, I’ll try to be detailed. So first of all, I have spun up a VM of Windows 10 1709. It is licensed. In an effort to do things right. I wanted custom profiles and some pre-configured apps. So I did the following:
- Install Windows on VMware
- On the ‘select Region’ splash screen hit ‘CTL+SHFT+F3’ to enter audit mode and begin customization.
- Installed all customized apps (autodesk, quicktime, atom, open office, etc.)
- Download Windows MDT ‘Deployment’ and create an unattend xml setting ‘copy profile’ to True (so that each new user gets all of my customizations)
- Install Fog Client Service, and ‘disable’ it to not effect imaging. (still haven’t worked out how to script its turning on post rebuild automatically, but I digress)
- Snapshot my VM (because this is where I can’t figure out the best way to go)
So from this point, I’m pretty good.
What I can’t seem to work out is dealing with Windows Store AppX packages. Here is what I have tried.
=Attempt 1=
- Without attempting to uninstall any Windows Store AppX packages, if I run sysprep, it will error out, complaining about whatever app is ASCIIbetically first in the list of bloatware crap that windows has decided should live on Windows 10 Pro. Currently they are things like: CandyCrushSaga, AutodeskSketchbook, HiddenCity, and a bunch of other garbage. But it also includes windows tiled apps that I need to keep like mspaint, calculator, photos, etc. Every forum post on technet or here so far has proposed the solution is to just uninstall them all with PS variations like the following:
Get-AppxPackage | Remove-AppxPackage # this uninstalls for current user only Get-AppxProvisionedPackage -online | Remove-AppxProvisionedPackage -online # this uninstalls for allusers
This will eliminate the sysprep error and allow sysprep to happen. The issue with this approach is it completely breaks all windows Store apps including the store itself for any machines I use this image on. This is expected since you are actually uninstalling every Windows Store package(s) with the above commands.
I want to keep Calculator, photos, and other basic function windows apps, so this didn’t work for me as a solution.
=Attempt 2=
- This was pretty much just running sysprep and checking the log to see what appX package it was complaining about and uninstalling it. then rinse and repeat until it no longer complains and lets me sysprep. the result was a little script like this for each entry:
Get-AppxPackage *HiddenCity* | Remove-AppxPackage Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*HiddenCity*" } | Remove-AppxProvisionedPackage -Online
But even after I imaged by hand-picking my apps, it seems to have gone and uninstalled others like calculator, photos, bingnews, etc. (which I didn’t ask to be uninstalled) additionally it also breaks the windows Store.
I have seen some suggestions on forums that it is actually Windows Update that is causing sysprep to fail and not the fact that these appX packages exist. I’ve read that somehow disabling internet access and also disabling the Windows Update Service somehow gets sysprep not to fail and you don’t need to uninstall any appX packages, but I haven’t successfully gotten this to work.
My first and most pressing question is if there is a way to sysprep and only remove appx apps that you don’t want without effecting the functionality of apps like Calculator, Photos, and Windows Store itself?
If that isn’t a thing (which is really surprising me that it wouldn’t be), how can I just sysprep it without breaking the Windows Store or uninstalling the appX trash? I seem to have exhausted forums on this topic but can’t find one mentioning how to uninstall CandyCrush, but keep Calculator and Windows Store.
Here are some really useful guides that helped, but didn’t get me there:
https://www.tenforums.com/tutorials/4689-uninstall-apps-windows-10-a.html#option3
https://theitbros.com/sysprep-windows-10-machine-guide/
https://forums.fogproject.org/topic/7451/windows-10-sysprep-error
https://forums.fogproject.org/topic/9877/windows-10-pro-oem-sysprep-imaging
(this one mentions removing selected apps, but their script didn’t work for me. You run it and still get an error when trying to even find Calculator: ‘You’ll need a new app to open this: ms-windows-store’Get-AppxPackage -AllUsers | where-object {$_.name –notlike “*store*” -And $_.packagename –notlike “*culator*”} | Remove-AppxPackage Get-appxprovisionedpackage –online | where-object {$_.packagename –notlike “*store*” -And $_.packagename –notlike “*culator*”} | Remove-AppxProvisionedPackage -online
At this point I’ve almost given up trying to uninstall the bloatware, but even if I went that route, there doesn’t seem to be a way around sysprep. Thanks for any replies in advance.
Running Fog Server v1.4.4
Windows 10 Pro 1709 Creators Update -
Isn’t Quicktime pretty much useless with Windows 10?
From the Quicktime page:
Important: QuickTime 7 for Windows is no longer supported by Apple. New versions of Windows since 2009 have included support for the key media formats, such as H.264 and AAC, that QuickTime 7 enabled. All current Windows web browsers support video without the need for browser plug-ins.
-
@avaryan it is and it isn’t. You still need the libraries for Autodesk Products (and some Adobe stuff) to support certain operations.
-
This is what I do to solve this:
[CTRL]+[SHIFT]+[F3]
DISABLE Store AutoUpdates group policy
Computer \ Administrative Templates \ Windows Components \ Store - Turn off Automatic Download and Install of updates = ENABLED
DISABLE Windows Store Install Service (InstallService)
CMD: net stop InstallService CMD: sc config InstallService start= disabled REBOOT
… build … build … build …
Disconnect the network adapter
REVERT the Store AutoUpdates policy
Computer \ Administrative Templates \ Windows Components \ Store - Turn off Automatic Download and Install of updates = not configured
You will notice that there is also now a Windows 8 specific entry that also changed itself to ENABLED. Click on it and it will also revert back to not-configured.
ENABLE Windows Store Install Service (InstallService)
CMD: sc config InstallService start= demand
sysprep-ahoy and shutdown. Turn your network adapter back on.
I prefer a more surgical approach to removing apps by removing them deliberately one at a time at the end right after disconnecting the adapter.
Remove Apps from All Users
Remove-AppxProvisionedPackage -Online -PackageName <packagename>
Remove Apps from Current User
Remove-AppxPackage -Package <packagename>
These are the apps that I recommend NOT be removed from 10v1709x64 (10.0.16299.15) GVLK:
Start Menu Item: App: Microsoft.DesktopAppInstaller Store Name: App Installer Store URL: ms-windows-store://pdp/?PFN=Microsoft.DesktopAppInstaller_8wekyb3d8bbwe Start Menu Item: Get Help App: Microsoft.GetHelp Store Name: Get Help Store URL: ms-windows-store://pdp/?PFN=Microsoft.Gethelp_8wekyb3d8bbwe Start Menu Item: Get Started App: Microsoft.Getstarted Store Name: Microsoft Tips Store URL: ms-windows-store://pdp/?PFN=Microsoft.Getstarted_8wekyb3d8bbwe Start Menu Item: View 3D App: Microsoft.Microsoft3DViewer Store Name: Mixed Reality Viewer Store URL: ms-windows-store://pdp/?PFN=Microsoft.Microsoft3DViewer_8wekyb3d8bbwe Start Menu Item: App: Microsoft.StorePurchaseApp Store Name: Microsoft.Wallet Store URL: Start Menu Item: Store App: Microsoft.WindowsStore Store Name: Store Store URL: ms-windows-store://pdp/?PFN=Microsoft.WindowsStore_8wekyb3d8bbwe Start Menu Item: App: Microsoft.Xbox.TCUI Store Name: Xbox Live in-game experience Store URL: ms-windows-store://pdp/?PFN=Microsoft.Xbox.TCUI_8wekyb3d8bbwe Start Menu Item: App: Microsoft.XboxGameOverlay Store Name: Xbox Game bar Store URL: ms-windows-store://pdp/?PFN=Microsoft.XboxGameOverlay_8wekyb3d8bbwe Start Menu Item: App: Microsoft.XboxIdentityProvider Store Name: Xbox Identity Provider Store URL: ms-windows-store://pdp/?PFN=Microsoft.XboxIdentityProvider_8wekyb3d8bbwe Start Menu Item: App: Microsoft.XboxSpeechToTextOverlay Store Name: Store URL:
-
@sudburr First off thanks for the reply.
I’m assuming that order of operations is pretty important for this to work. Unfortunately this process didn’t work for me. I followed what you posted, but wasn’t clear on the steps of
‘build … build… build…’ ( i don’t know what that means)
I also have to assume that uninstalling appx packages is done right after disconnecting the network adapter but BEFORE reverting the GPO back to ‘not configured’ and ‘InstallService start= AUTO’Here is what I did:
- I disabled the local GPO for auto-download, and ran sc config to disable the installservice. then I rebooted (booting back into audit mode)
- while the computer is off, I disabled the network adapter
- upon rebooting, I removed apps one at a time, but sysprep continued to cause a failure until I removed all of the following:
#REMOVE FOR CURRENT USER Get-AppxPackage *HiddenCity* | Remove-AppxPackage Get-AppxPackage *Disney* | Remove-AppxPackage Get-AppxPackage *SketchBook* | Remove-AppxPackage Get-AppxPackage *MarchofEmpires* | Remove-AppxPackage Get-AppxPackage *HiddenCity* | Remove-AppxPackage Get-AppxPackage *Saga* | Remove-AppxPackage Get-AppxPackage *Minecraft* | Remove-AppxPackage Get-AppxPackage *zunemusic* | Remove-AppxPackage Get-AppxPackage *bingnews* | Remove-AppxPackage Get-AppxPackage *bingweather* | Remove-AppxPackage Get-AppxPackage *mspaint* | Remove-AppxPackage Get-AppxPackage *spotify* | Remove-AppxPackage #REMOVE FOR ALL FUTURE USERS Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*HiddenCity*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*Disney*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*Sketchbook*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*MarchofEmpires*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*Saga*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*Minecraft*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*zunemusic*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*bingnews*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*bingweather*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*mspaint*" } | Remove-AppxProvisionedPackage -Online Get-AppxProvisionedPackage -Online | where-object { $_.packagename -like "*spotify*" } | Remove-AppxProvisionedPackage -Online
-
After uninstalling the above, I reset both GPOs to ‘not-configured’ as you described.
-
your command:
sc config InstallService start= Manual
gives an error that ‘Manual’ isn’t a command that ‘start’ accepts so I set it to ‘AUTO’ instead. -
with apps uninstalled, I ran sysprep, let it shutdown
-
while powered off, I then turned on the network adapter
-
turned the vm back on and captured the image in FOG.
-
I then deployed that image to test it on 2 different machines and both gave me back the same error I was getting before where any attempt to connect to the windows store errors with:
‘You’ll need a new app to open this: ms-windows-store’
which is the same result as before. -
Did I miss something?
-
Sorry I meant to say
sc config InstallService start= demand
… typing through a cloud of mucus.
build … build … build means just that … build your image.
You want to ensure the store cannot update at any point after you’ve removed the packages, or else they re-download and install.
I strongly recommend you go back to bare metal so you don’t even see all those recommended apps you manually removed. Be sure to never let Windows see the internet until after you have configured the group policy, stopped the service, then restarted.
-
I personally haven’t had issues sysprepping 1709.
Is this a clean installation of 1709? (I’m guessing it is). Updating to new versions tends to give issues with sysprep.
I am going to guess the real issue lies with the copyprofile attempt and its inability to properly deal with the windows apps.
Try using defprof (small executable) as an alternative to copyprofile.
It will ask to install a service, specifically to handle the Windows apps.
-
@quazz We don’t use CopyProfile and are having the same issue.
In our case, we have kiosks and student computer labs that all have a local user profile created in the image. Once Sysprep is run, almost no apps are installed in that user profile, other than Settings and Edge.
Weirdly, the Store app still works in my image. So, in theory, I could re-install all the apps after deployment using the Store, but that’s way too much work for thousands of computers.
My first suspicion that something was wrong was that, after Sysprep, logging into this local user account was very quick and there was no “changing colors” introduction that usually runs. Normally, after Sysprep, when I login into this account, it takes about 30 seconds for the account to be setup, and during this time, the “changing colors” background appears with the “we are getting your computer ready” text. But that didn’t happen this time.
-
@cronsloth did you make any headway on this?