As a Windows 10 user, you’re not new to the monthly cumulative updates released by Microsoft. Most of the time, these updates are downloaded in the background without your knowledge. Once the download is complete, the Windows Update utility will send a notification, asking you to restart your system to install the updates.
That said, there are cases when the tool hits a roadblock and produces different error codes, one of them being the error 0x800f0900. This particular error translates to CBS_E_XML_PARSER_FAILURE (unexpected internal XML parser error), meaning that some system entities related to the update process are corrupt.
Why Do I Get Windows Update Error 0x800f0900 on Windows 10?
The problem was mostly common with users who were trying to download and install a new patch for the April 2018 update of Windows 10. However, it does show up in other cases.
One of the major causes of the problem is corrupt system files. That said, there are other underlying root causes such as disabled services related to Windows Update, non-essential or corrupt cache, faulty internet connection, antivirus or firewall interference, and faulty device drivers, among others.
How to Fix Windows Update Error 0x800f0900 on Windows 10?
Getting rid of the error involves resolving its root causes. Below, you’ll find different guides on how to fix different issues, from faulty system files to device driver issues. It’s important that you go through the fixes one after the other if you want to solve the problem quickly.
Run the Windows Update troubleshooter
Microsoft included troubleshooting tools for different utilities, and you’ll find one for Windows Update. The tool will work to resolve conflicts and activate certain services that are disabled. Running it is quite simple and straightforward; follow the steps below:
- Go to the Start menu (tap the Windows logo key or click on the Start button) and click on the cog icon above the power icon to open Settings. If you want to open the Settings app faster, go to your keyboard and tap the Windows and I keys together.
- After the home screen of the Settings app shows up, go to the bottom of the page and click on Update & Security.
- Once you see the Update & Security interface, switch to the left pane and click on Troubleshoot.
- Now, go to the right side of the window and click on Windows Update under the Get up and running section.
- Click on the Run the troubleshooter button that appears under Windows Update.
- The troubleshooter will now run and try to resolve issues plaguing the Windows Update utility.
- Once the tool has done its job, you can restart your system and try downloading the update.
Get rid of temporary files
Windows applications and other third-party programs often store temp files on your disk that are only useful for a short period of time. These files can easily become corrupt or get in the way of the update process. Try getting rid of them and check if that will resolve the problem. You can either use the Disk Cleanup tool or clear out temp files via the Settings application.
We’ll be showing you what to do below.
Using the Disk Cleanup tool:
- Go to Search and type “disk cleanup” (no quotes).
- Select Disk Cleanup from the results.
- Open Disk Cleanup.
- Once the Disk Cleanup window appears, check the boxes beside the temporary files that you wish to delete, then click on the OK button.
- Once the cleanup process is finished, restart your computer and check for the update error.
Also read: Disk Cleanup Tips: How to Compress a Drive to Save Disk Space in Windows 10
Going through the Settings app
- Right-click the Start button and select Settings or tap the Windows logo and I keys together to open the Settings application.
- After the Settings app shows up, click on the System icon.
- Once you see the System interface, go to the left pane and click on Storage.
- Go to the right side of the screen and click on Temporary files.
- Allow Windows to scan your temporary files.
- Once the scan is complete, select the categories of temporary files that you want to get rid of, and then click on the Remove files button.
It will then safely remove them from your system, optimizing your PC for maximum speed and efficiency.
And all it takes is just a few clicks!
Also read: So Easy to Do: How to Uninstall Programs and Apps on Windows 10/11?
Making sure the Windows Update services are running
The error message could be appearing because certain services are disabled. These services include the Background Intelligent Transfer Service (BITS), the Update Orchestrator Service, and the Windows Update service. You must know that you will not be able to update your system if any of these services are not working.
To make sure they’re running, you have to go through the Services application. The steps below will show you what to do:
- Open the Run dialog box. You can do this by right-clicking the Start button and selecting Run or by pressing the Windows logo and R keys at the same time.
- After the Run dialog box appears, type
services.msc
into the text box and hit the Enter key.
- Once the Services app opens, search for the entries of the following services:
- Background Intelligent Transfer Service,
- Update Orchestrator Service,
- Windows Update.
- Go to each service, right-click it, and then click on Properties.
- Once the Properties window opens, stay in the General tab, and then select Automatic in the Startup type drop-down menu.
- Click on the OK button, and then run the Windows Update utility to check for the problem.
Scan your PC for malware
It’s possible that a malware attack is causing the problem. Some malicious programs might have tampered with some of your system files or programs related to Windows Update. Some users reported that they got rid of the update error 0x800f0900 after running a full system scan.
Also read: How to Prevent Malware: Lock Down Your Online Safety
Follow the steps below if your main antivirus program is Windows Security:
- Navigate to the taskbar, right-click on the Start button, and then click on Settings in the Quick Access menu. You can also click on the cog icon in the Start button or use the
Windows + I
keyboard shortcut to summon the Settings app. - After the home screen of Windows Settings shows up, click on the Update & Security icon at the bottom of the page.
- Once you see the Update & Security interface, go to the left pane and click on Windows Security.
- Now, navigate to the Windows Security tab and click on Virus & threat protection.
- After the Virus & threat protection tool of Windows Security opens, click on Scan options under Current threats.
- On the Scan options screen, select the radio button for Full scan, and then click on the Scan now button.
- The tool will now check all the programs and files on your hard disk for malware.
- Allow the process to run its course, as this could take a while.
The best part is that Auslogics Anti-Malware is designed for Windows and can run alongside other antivirus programs.
Scan for and get rid of corrupt system files
Missing or damaged system files are another major reason for the problem. These files might have been compromised by malware, and it’s also possible that you tampered with them unknowingly. There are other elements that could damage or delete your system files, such as certain third-party programs with elevated privileges.
Whatever the case, you have to scan your system and check whether there are corrupted or missing Windows Resource Protection (WRP) files. Use the built-in command-line utility, SFC (System File Checker), to check for broken system files and automatically replace them.
You should note, though, that on Windows 10, you have to run the DISM (Deployment Image Servicing and Management) tool before running the System File Checker. The job of the DISM is to provide the files needed for the repair process. If you don’t know how to run the utility, follow the steps below:
- Go to the taskbar and click on the magnifying glass icon to open the search box beside Start. You can also open the search function by pressing the Windows and S keys together.
- After the search utility opens, type “command prompt” (without the quotes) into the text box.
- Once Command Prompt shows up in the search results, right-click it, and then click on Run as administrator in the context menu.
- Once the User Account Control dialog window pops up, click on the Yes button.
- After Command Prompt appears, go to the black screen, type the following line, and then hit the Enter key:
DISM.exe /Online /Cleanup-image /Restorehealth
DISM will now fetch the system files that the SFC will use to run the repair. Normally, the tool uses the Windows Update utility to fetch these files; however, since you are having problems with the utility, you’ll have to use a Windows 10 installation DVD or another bootable media as the repair source.
Once you insert the bootable media, enter the following line:
DISM.exe /Online /Cleanup-Image /RestoreHealth /Source:C:\RepairSource\Windows /LimitAccess
Once the command executes, move on to the next step.
- Now, type “sfc /scannow” (without the quotes), then hit the Enter key.
- If you see a completion message that reads, “Windows Resource Protection found corrupt files and successfully repaired them,” restart your system, and the error should not occur again.
- If you see a different completion message, however, such as “Windows Resource Protection could not perform the requested operation,” you have to start your system in Safe Mode and run the SFC tool.
The steps below will show you what to do:
- Open the Settings application by right-clicking the Start button and selecting Settings or by using the
Windows + I
keyboard combination. - After the Settings app opens, click on Update & Security at the bottom of the home screen.
- Once the Update & Security interface shows up, go to the left pane and click on Recovery.
- Go to the right pane, scroll down, and then click on Restart now under Advanced start-up.
- Once your PC reboots to the Advanced Startup environment, click on the Troubleshoot tile.
- On the Troubleshoot screen, click on Advanced options.
- Now, click on Startup Settings once you see the Advanced Options interface.
- Click on the Restart button under Startup Settings.
- After your computer reboots to the Startup Options environment, tap F4 on your keyboard to start Windows in Safe Mode or tap F5 for Safe Mode with Networking.
- Once your PC boots into Safe Mode, go to the %WinDir%\WinSxS\Temp folder (you can enter it in Run) and make sure the PendingDeletes and PendingRename folders are located there.
- Now, run the SFC tool, as explained above.
- Reset the Winsock component
You can easily reset the Winsock component to get rid of corruption or any wrong data configuration. The steps below will walk you through the process:
- Go to the taskbar and click on the magnifying glass beside the Start button to summon the search bar. You can also tap the Windows logo and S keys simultaneously to launch the search utility.
- After you see the search bar, type “command” (no quotes) into the text field.
- Once you see Command Prompt in the search results, right-click it and select Run as administrator from the context menu.
- Click on the Yes button once the User Account Control confirmation dialog opens.
- Now, type the line below into the Command Prompt window and hit the Enter key:
netsh winsock reset
- Restart your system once the command executes, then check for the error.
Reset the Windows Update components
This process involves resetting the SoftwareDistribution and Catroot2 folders. These folders contain previously downloaded updates that are yet to be installed. The error could be showing up because the files in these folders are corrupt, hence the reason you have to clear them to start the update process afresh. We’ll be showing you how to do that and how to also reset the security descriptions for the Background Intelligence Transfer Service.
Follow the steps below:
First step: Stop Windows services such as the Background Intelligent Transfer, Windows Update Application Identity, and Cryptographic services to gain access to the SoftwareDistribution and Catroot2 folders:
- Right-click the Start button and click on Run in the Quick Access menu or open the dialog window using the
Windows + R
hotkey. - Once Run opens, type “CMD” (no quotes) into the text field and hit Enter.
- Click Yes when you see the User Account Control dialog.
- Once the elevated Command Prompt window appears, type the following lines into the black screen and hit Enter after each:
net stop bits net stop wuauserv net stop appidsvc net stop cryptsvc
Second step: Delete the file named qmgr*.dat by entering or copying and pasting the command line below into the admin Command Prompt:
Del "%ALLUSERSPROFILE%\Application Data\Microsoft\Network\Downloader\qmgr*.dat"
Third step: Rename the SoftwareDistribution and Catroot2 folders. To do that, type or copy and paste the lines below into the black screen, and remember that you must hit the Enter key after typing each line:
Ren %systemroot%\SoftwareDistribution SoftwareDistribution.bak Ren %systemroot%\system32\catroot2 catroot2.bak
Fourth step: Reset the security descriptor of the Windows Update service and the Background Intelligent Transfer Service to default. Copy and paste the lines below into the elevated Command Prompt and hit Enter after each:
sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU) sc.exe sdset wuauserv D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
Fifth step: Enter the following command to switch to the System32 folder:
cd /d %windir%\system32
Sixth step: Now, you have to reregister the DLL files associated with Windows Update. To do that, enter the command lines below and make sure you press the Enter key after typing each line:
regsvr32.exe atl.dll regsvr32.exe urlmon.dll regsvr32.exe mshtml.dll regsvr32.exe shdocvw.dll regsvr32.exe browseui.dll regsvr32.exe jscript.dll regsvr32.exe vbscript.dll regsvr32.exe scrrun.dll regsvr32.exe msxml.dll regsvr32.exe msxml3.dll regsvr32.exe msxml6.dll regsvr32.exe actxprxy.dll regsvr32.exe softpub.dll regsvr32.exe wintrust.dll regsvr32.exe dssenh.dll regsvr32.exe rsaenh.dll regsvr32.exe gpkcsp.dll regsvr32.exe sccbase.dll regsvr32.exe slbcsp.dll regsvr32.exe cryptdlg.dll regsvr32.exe oleaut32.dll regsvr32.exe ole32.dll regsvr32.exe shell32.dll regsvr32.exe initpki.dll regsvr32.exe wuapi.dll regsvr32.exe wuaueng.dll regsvr32.exe wuaueng1.dll regsvr32.exe wucltui.dll regsvr32.exe wups.dll regsvr32.exe wups2.dll regsvr32.exe wuweb.dll regsvr32.exe qmgr.dll regsvr32.exe qmgrprxy.dll regsvr32.exe wucltux.dll regsvr32.exe muweb.dll regsvr32.exe wuwebv.dll
Seventh step: After that, go to the Registry Editor and delete some bad registry keys:
- Open the Run dialog box, type
regedit
, then click OK. Confirm your decision in the User Account Control dialog prompt. - Once the Registry Editor opens, navigate to the left pane and expand HKEY_LOCAL_MACHINE.
- Go to COMPONENTS and expand it.
- Now, delete the following keys if you find them under COMPONENTS:
PendingXmlIdentifier
NextQueueEntryIndex
AdvancedInstallersNeedResolving
Before the next fix, save this web page or bookmark it, then restart your system.
Eighth step: Restart the services you disabled in the first step. Type the lines below and hit Enter after typing each:
net start bits net start wuauserv net start appidsvc net start cryptsvc
Ninth step: Restart your system and check if the issue has been resolved.
Perform a clean boot
Background applications that launch when Windows starts can interfere with the update process and trigger the error. You can figure out which one of these applications is responsible by performing a clean boot.
Performing a clean boot means that you’ll have to prevent every startup application from loading automatically after your system boots up. Once you’ve done that, you can check if the update error shows up again. If it doesn’t, then that’s your confirmation that a startup program is the cause of the problem.
The steps below will show you how to perform a clean boot and isolate the problematic startup service or program:
- Right-click on the Start button and click on Run once the Quick Access menu appears. You can also press and hold the Windows logo key, then tap the R key to launch Run.
- Once Run opens, type
msconfig
and click on the OK button.
- Switch to the Services tab once the System Configuration dialog appears.
- Under the Services tab, locate the Hide all Microsoft services checkbox and mark it.
- Click on the Disable all button to stop the services listed under the tab from launching the next time Windows boots.
- Next, navigate to the Startup tab and click on Open Task Manager.
- You’ll now be redirected to the Startup tab of Task Manager.
- Disable every program that you see under the Startup tab by right-clicking each of them and clicking on Disable.
- Exit Task Manager and click on the OK button in System Configuration.
- Restart your PC.
Your system will now start in the clean boot environment. You can now run the update and check if the error shows up. If the error does not appear, then one of the startup items you disabled is responsible for the challenge you’ve been facing.
Going through all the startup items one by one can be a lengthy process. With the guide below, you can save yourself a great deal of needless stress:
- Once your system starts in the clean boot environment, open the System Configuration dialog, go to the Service tab, and enable half of the services under the tab, preferably the first half.
- Reboot your system, and if the Windows Update error occurs, one of the services in the first half of the list is responsible. You can now ignore every other service and check the services in the top half, one after the other.
- If the problem doesn’t occur, however, enable the second half of the services and check for the issue.
If none of the items under the services tab trigger the error, perform the same operation from steps 1 to 3 for the programs under the Startup tab.
It’s compatible with Windows 10 and won’t cause any form of interference.