Skip to main content

How to Remove Windows 10 Bloatware Permanently

First and foremost...I want to thank at least 10 different bloggers for posting general information and one of the most helpful was Daniel's IT Blog. and Andre Picker (This is for removal of the unwanted W10 Apps from .WIM only)

This is for an IT Image for Windows 10. Why on earth Microsoft doesn't have an "IT" script to remove all the junk they know damn well will never go on a business, enterprise or government computer is beyond me. So we IT Managers, Solution Architects, Systems Engineer's are left figuring out ways to remove the crapware so user's don't put in a million tickets asking questions about using the software or locking their machine up doing something crazy no one anticipated.

Here you go:

1. You can use a Powershell script from How-To-Geek: but for IT purposes. It's only removing the junk from one profile. Not the entire machine. As soon as you log in with another user.'s back like a software cancer.

2. You have to disable things in the registry for it to be permanent or you can rely on some task to run from SCCM, but they're not always reliable and many times it appears and then the script has to run for it to disappear. Again, this will do nothing but generate support tickets and unnecessary calls about "What is this thing on my machine? Do I have a virus?".

3. #1 Rule of IT and Troubleshooting. Never give up. Somebody has solved the problem or you will get close enough to fix the issue yourself.

4. Completed on Windows 10 Enterprise Version 1803. OS Build 17134.285

5.  Launch services.msc and stop and then disable the services you don't need (this worked for me, but you may do something different):

Touch and Keyboard and Handwriting
Hyper-V (All)
Microsoft iSCSI
Microsoft App-V Client
dmwappushsvc (Data Collection service)
Downloaded Maps Manager (Microsoft Maps)
Phone Service
Remote Registry
Retail Demo Service
Routing and Remote Access (Unless you have a business need)
User Experience Virtualization Service
Windows Backup
Xbox Settings (All) - FYI. You have to disable the Xbox Gaming Monitoring Feature in the Registry. It won't disable from services.msc. Great Tutorial to Disable in the Registry:

6. Disable the crapware/bloatware permanently (Thanks Daniel:

Disable by changing to a [0]

7. Create a new local account and verify everything is disabled.

Start >> Settings >> Family & other people >> Add someone Else to this PC >> Click on "I don't have this person's sign-in information >> Click Add a user without a Microsoft Account. >> Type in your username, password and temporary recovery. You will be blowing this away. It's just for testing so don't bother getting all fancy.

8. Those of us that have been around for a while know about Computer Management. Just use this one and blow it away when your done. 

9. If you have to find the account you created (like you joined it to the domain BEFORE you removed it and started working on it locally in a VM...cough...cough). You can find the buried System Properties under Control Panel:

10. Go under Settings and delete the other profiles (Domain Accounts you cannot delete from Computer Management. (*While you're at it, Adjust for Best Performance). PRO TIP: Just leave the thing open. You will be blowing away test accounts.

11. OCD Style (Be Careful):

Delete the packages under C:\MSOCache\All Users\ (One Note/Groove). If you have MS Office installed. Do NOT just go in there and wipe out all of the folders. 

12. PRO TIP: Turn the Hidden Files feature back off before you forget and do something terrible.

13. Windows System Apps Location: C:\WindowsSystemApps. This is where the files and executables are stored. 

14. Location of the files in the registry (FYI. Microsoft makes it difficult to edit these entries): 

15. Disabling the "PackageRoot" and "PackageRepositoryRoot" could cause unintended consequences. Test and configure to your liking.

16. Appx >> Config >> Microsoft.Windows.CloudExperienceHost_cw5n1h2txyewy >> SetupPhase [Default is 27] Changed to 0 (launches the new profile quicker)

17. Appx >> Config >> Microsoft.BioEnrollment_cw5n1h2txyewy >> SetupPhase [Default is 81] Changed to 0 (launches the new profile quicker)

18. At this point, the bloatware is still coming up on launch. Now we kill it. (FYI. I didn't mess with Windows Store at all since it can break all manner of things on updates, etc)

19. Before you run any PowerShell Scripts. You have to enable the ability to run Scripts on Windows 10. Right-click on PowerShell and "Run As Administrator"

PS C:\Windows\system32> Get-ExecutionPolicy
PS C:\Windows\system32> Set-ExecutionPolicy unrestricted

Click Y or S (Suspend) and then run your script

cd ~ to return to your profile location and then cd into your location of the PowerShell Script

20. Powershell easy peasy...Save it as "CleanUp.ps1" and cd to the folder from PowerShell and run it.

#Retrieved on 9.26.2018 from
#Be careful removing Windows Store from Windows 10 since it can
#have unintended consequences for Windows Updates
Get-AppxPackage *3dbuilder* | Remove-AppxPackage
Get-AppxPackage *windowsalarms* | Remove-AppxPackage
Get-AppxPackage *windowscommunicationsapps* | Remove-AppxPackage
Get-AppxPackage *officehub* | Remove-AppxPackage
Get-AppxPackage *skypeapp* | Remove-AppxPackage
Get-AppxPackage *getstarted* | Remove-AppxPackage
Get-AppxPackage *zunemusic* | Remove-AppxPackage
Get-AppxPackage *windowsmaps* | Remove-AppxPackage
Get-AppxPackage *solitairecollection* | Remove-AppxPackage
Get-AppxPackage *bingfinance* | Remove-AppxPackage
Get-AppxPackage *zunevideo* | Remove-AppxPackage
Get-AppxPackage *bingnews* | Remove-AppxPackage
Get-AppxPackage *onenote* | Remove-AppxPackage
Get-AppxPackage *people* | Remove-AppxPackage
Get-AppxPackage *windowsphone* | Remove-AppxPackage
Get-AppxPackage *photos* | Remove-AppxPackage
Get-AppxPackage *bingsports* | Remove-AppxPackage
#Do Not disable if you have any visually impaired
Get-AppxPackage *soundrecorder* | Remove-AppxPackage
Get-AppxPackage *bingweather* | Remove-AppxPackage
Get-AppxPackage *xboxapp* | Remove-AppxPackage

21. None SCCM Option/Failsafe Option:

Save the file under c:\Users\Default\AppData\Local\Microsoft\CleanUp\CleanUp.bat
The actual powershell file will live under c:\%WinDir%\system32\CleanUp.ps1

Batch File under AppData:
REM Run an unsigned PowerShell script and log the output
Powershell.exe -ExecutionPolicy Unrestricted .\%WINDIR%\system32\Cleanup.ps1 >> "%TEMP%\CleanUpLog.txt" 2>&1

REM If an error occured, return to errorlevel.
EXIT /B %errorlevel%

22. Setup a Task and configure it to run weekly or on login in or script in in SCCM

23. Remember when you are setting up a Task Scheduler item that you have to have a  bypass for the script to run. I don't recommend turning PowerShell scripting off because it can have a nasty impact on your environment is PS execution is off for all of your machines. Definitely, not a good idea.

Under Actions: Start a Program >> Program/Script: >> Type in powershell.exe >> Add Arguments (Optional): -ExecutionPolicy Bypass c:\path to your script

24. Test it under a demo user. (You will see now why I said just keep Computer Management Open.)

25. Before you shutdown the system and convert it to the .wim image. Make sure that you run disk cleanup and that you delete the unnecessary Windows Update files to shrink the image and cleanup the junk:

CMD Prompt:
C:\ net stop wuauserv
C:\ cd %windir%\SoftwareDistribution
C:\del /F /S /Q Download && Start .

Once in Downloads. Wipe it all out.

c:\net start wuauserv

26. Open Powershell as administrator and clear all of the system logs (so you know that everything is fresh):

wevtutil el | Foreach-Object {wevttil cl "$_"}

If you want to use Command Prompt instead:

for /F "tokens=*" %1 in ('wevtutil.exe el') DO wevtutil.exe cl "%1"

27. Type in cmd and then shutdown /s /t 00

28. Use this to remove the apps from the .wim (This is for removal of the unwanted W10 Apps from .WIM only) *FYI. Didn't work for me.

Popular posts from this blog

How to Login to AWS using CLI with AzureSSO through Azure Active Directory

Testing on Windows 10 Release 1909  Prerequisite (Install Visual Studio Code and the AWS CLI if you don't have it already installed and your Azure Active Directory is already configured and processing authentication) 1. Install Node.Js (Use the LTS Edition/Version) 2. Check the node version in PowerShell or Windows Terminal: node --version && npm --version 3. npm install -g aws-azure-login *install will take about 15-20 minutes. Be patient and let it finish.  4. Configure your profile aws-azure-login --configure --profile=<<Name of your profile>> Example:  aws-azure-login --configure --profile=migrationking Pro Tip: It installs the profile on your machine under ~/.aws/config . You can edit the file with Visual Studio Code or Notepad++ #This will prompt to Enter the Azure AD details *** Azure Tenant ID: << Enter the Azure AD Tenant ID from the Azure AD application configuration for the AWS Account to be accessed>> Azure Tenant I

How to Fix /storage/core filesystem Out of Disk Space Error on VCSA 6.0U1

How to fix the error of " The /storage/core filesystem is out of disk space or inodes" Step 1: Login to the new VCSA 6.0U1 HTML5 web client. https://ip address:5480 Step 2: Enable SSH and Bash Shell Step 3: Login as root and type "shell" at Command> shell Step 4: df -h (Check if it's out of space) /dev/mapper/core_vg-core               50G   50G     0 100% /storage/core Step 5: Stop the services of VCSA:  hostname: # service vmware-vpxd stop hostname: # service vmware-vpxd status (make sure it is stopped) Step 6:  cd /storage/core Step 7: rm -rf *.tgz ( be CAREFUL this in the wrong directory and you will be retrieving from a backup .) If you need help. Go to Cybercity ( )  Step 8: service vmware-vpxd restart Step 9: history -c Step 10:  Refresh the browser (https://ip address:5480). Now it's all green VMware KB

How to Setup CAC/PIV Cards on Ubuntu Linux 20.04LTS

NOTE: Verified to work with PIV/CAC Cards NOTE: Do not use a Regular USB if you are traveling. Only use a Military Grade FIPS 140-2, Level 3 Certified Device. Do Not use that Fingerprint reader garbage. What if your finger got chopped off? Use a Pin you can easily remember because if you forget it, your VM and data on the USB will be toast and not recoverable.  NOTE: This tutorial is for a bare-metal Ubuntu Linux 20.04 LTS laptop, not a virtual machine. Make sure you encrypt your laptop during OS installation. Do NOT be an idiot and use the same encryption password as the OS login. 1. Purchase an ACS Smart Card reader (Manufacturer Code: ACR39U-N1) (PS/SC Drivers are located