
How to fix error 0x80246010 when updating Windows 8.1 and 10?
nimda
- 0
While installing one or more updates for Windows 8.1 and 10, you may stumble upon error 0x80246010. Typically, this error occurs for the following reasons:
- a bug in the work of Windows Update;
- the services involved in the system update process are not working;
- damage to system files.
In today’s article, we will tell you in detail how to get rid of error 0x80246010 and properly update your Windows.
Solving error 0x80246010

Method # 1 Run the troubleshooter
First thing you need to do is run the Update System Troubleshooter on your Windows. True, some of you may know that this tool does not work in every case, but you definitely need to try.
Right-click on Start and select Settings. Next, open the “Update and Security” section, and then go to the “Troubleshooting” subsection. Find Windows Update in the provided list, select it and click on the “Run the troubleshooter” button.
Wait while the tool scans your PC for problems with Update Center and then click the Apply this fix button or follow other instructions to try to resolve error 0x80246010.
Method # 2 Installing update manually
You can always exclude the Update Center (WU) from the system update process by installing the problematic update yourself. First, you need to understand which update is installing an error.
Open system settings and then go to: Update & Security → Windows Update. Now click on the line “View update log”. Look closely at the log and find the update with the error 0x80246010 “flaunting”.
Copy the update name and its number to a convenient place on your computer, for example, to a text file on your Desktop, and then go to this link to the Microsoft Update Catalog page.
Enter the update number in the search box on the site and click on the “Find” button. Select the appropriate update and the list of found updates and click “Download”. All you have to do is launch the downloaded MSU file and follow the on-screen instructions (if any) to install the update.
Method # 3 Enabling all services important to WU
It also happens that some services actively participating in the Windows update process stop working in the system for one reason or another. You need to adjust the settings for these services and then restart your computer.
Right-click on Start and select “Command Prompt (Administrator)”. Now run the following set of commands in it:
- SC config trustedinstaller start = auto
- SC config bits start = auto
- SC config cryptsvc start = auto
Once you’re done entering commands, close the window and restart your computer. Try updating Windows again and see if error 0x80246010 has been resolved.
Method # 4 Resetting the Update Center components
If none of the above helped you, then it’s time to move to “heavy artillery”. Now we will take care of resetting all Windows Update components with you. Some users carry out this process manually, but we recommend using the convenient BAT file.
So, create a regular text file on your Desktop, and then paste the entire list of commands into it:
:: Run the reset Windows Update components.
:: void components ();
:: / ********************************************* ************************************* /
: components
:: —– Stopping the Windows Update services —–
call: print Stopping the Windows Update services.
net stop bitscall: print Stopping the Windows Update services.
net stop wuauservcall: print Stopping the Windows Update services.
net stop appidsvccall: print Stopping the Windows Update services.
net stop cryptsvccall: print Canceling the Windows Update process.
taskkill / im wuauclt.exe / f:: —– Checking the services status —–
call: print Checking the services status.sc query bits | findstr / I / C: “STOPPED”
if% errorlevel% NEQ 0 (
echo. Failed to stop the BITS service.
echo.
echo.Press any key to continue. … …
pause> nul
goto: eof
)call: print Checking the services status.
sc query wuauserv | findstr / I / C: “STOPPED”
if% errorlevel% NEQ 0 (
echo. Failed to stop the Windows Update service.
echo.
echo.Press any key to continue. … …
pause> nul
goto: eof
)call: print Checking the services status.
sc query appidsvc | findstr / I / C: “STOPPED”
if% errorlevel% NEQ 0 (
sc query appidsvc | findstr / I / C: “OpenService FAILED 1060”
if% errorlevel% NEQ 0 (
echo. Failed to stop the Application Identity service.
echo.
echo.Press any key to continue. … …
pause> nul
if% family% NEQ 6 goto: eof
)
)call: print Checking the services status.
sc query cryptsvc | findstr / I / C: “STOPPED”
if% errorlevel% NEQ 0 (
echo. Failed to stop the Cryptographic Services service.
echo.
echo.Press any key to continue. … …
pause> nul
goto: eof
):: —– Delete the qmgr * .dat files —–
call: print Deleting the qmgr * .dat files.del / s / q / f “% ALLUSERSPROFILE% Application Data Microsoft Network Downloader qmgr * .dat”
del / s / q / f “% ALLUSERSPROFILE% Microsoft Network Downloader qmgr * .dat”:: —– Renaming the softare distribution folders backup copies —–
call: print Deleting the old software distribution backup copies.cd / d% SYSTEMROOT%
if exist “% SYSTEMROOT% winsxs pending.xml.bak” (
del / s / q / f “% SYSTEMROOT% winsxs pending.xml.bak”
)
if exist “% SYSTEMROOT% SoftwareDistribution.bak” (
rmdir / s / q “% SYSTEMROOT% SoftwareDistribution.bak”
)
if exist “% SYSTEMROOT% system32 Catroot2.bak” (
rmdir / s / q “% SYSTEMROOT% system32 Catroot2.bak”
)
if exist “% SYSTEMROOT% WindowsUpdate.log.bak” (
del / s / q / f “% SYSTEMROOT% WindowsUpdate.log.bak”
)call: print Renaming the software distribution folders.
if exist “% SYSTEMROOT% winsxs pending.xml” (
takeown / f “% SYSTEMROOT% winsxs pending.xml”
attrib -r -s -h / s / d “% SYSTEMROOT% winsxs pending.xml”
ren “% SYSTEMROOT% winsxs pending.xml” pending.xml.bak
)
if exist “% SYSTEMROOT% SoftwareDistribution” (
attrib -r -s -h / s / d “% SYSTEMROOT% SoftwareDistribution”
ren “% SYSTEMROOT% SoftwareDistribution” SoftwareDistribution.bak
if exist “% SYSTEMROOT% SoftwareDistribution” (
echo.
echo. Failed to rename the SoftwareDistribution folder.
echo.
echo.Press any key to continue. … …
pause> nul
goto: eof
)
)
if exist “% SYSTEMROOT% system32 Catroot2” (
attrib -r -s -h / s / d “% SYSTEMROOT% system32 Catroot2”
ren “% SYSTEMROOT% system32 Catroot2” Catroot2.bak
)
if exist “% SYSTEMROOT% WindowsUpdate.log” (
attrib -r -s -h / s / d “% SYSTEMROOT% WindowsUpdate.log”
ren “% SYSTEMROOT% WindowsUpdate.log” WindowsUpdate.log.bak
):: —– Reset the BITS service and the Windows Update service to the default security descriptor —–
call: print Reset the BITS service and the Windows Update service to the default security descriptor.sc.exe sdset wuauserv D: (A ;; CCLCSWLOCRRC ;;; AU) (A ;; CCDCLCSWRPWPDTLOCRSDRCWDWO ;;; BA) (A ;; CCDCLCSWRPWPDTLCRSDRCWDWO ;;; SO) (AP ;; CCLCSWR; AU; FA; CCDCLCSWRPWPDTLOCRSDRCWDWO ;; WD)
sc.exe sdset bits D: (A ;; CCLCSWLOCRRC ;;; AU) (A ;; CCDCLCSWRPWPDTLOCRSDRCWDWO ;;; BA) (A ;; CCDCLCSWRPWPDTLCRSDRCWDWO ;;; SO) (A ;; SLCSWRPWP( AU; FA; CCDCLCSWRPWPDTLOCRSDRCWDWO ;; WD)
sc.exe sdset cryptsvc D: (A ;; CCLCSWLOCRRC ;;; AU) (A ;; CCDCLCSWRPWPDTLOCRSDRCWDWO ;;; BA) (A ;; CCDCLCSWRPWPDTLCRSDRCWDWO ;;; SO) (A ;; CCLCSWR; AU; FA; CCDCLCSWRPWPDTLOCRSDRCWDWO ;; WD)
sc.exe sdset trustedinstaller D: (A ;; CCLCSWLOCRRC ;;; AU) (A ;; CCDCLCSWRPWPDTLOCRSDRCWDWO ;;; BA) (A ;; CCDCLCSWRPWPDTLCRSDRCWDWO ;;; SO) (A ;; CCLCSWR; AU; FA; CCDCLCSWRPWPDTLOCRSDRCWDWO ;; WD):: —– Reregister the BITS files and the Windows Update files —–
call: print Reregister the BITS files and the Windows Update files.cd / d% SYSTEMROOT% system32
regsvr32.exe / s atl.dll
regsvr32.exe / s urlmon.dll
regsvr32.exe / s mshtml.dll
regsvr32.exe / s shdocvw.dll
regsvr32.exe / s browseui.dll
regsvr32.exe / s jscript.dll
regsvr32.exe / s vbscript.dll
regsvr32.exe / s scrrun.dll
regsvr32.exe / s msxml.dll
regsvr32.exe / s msxml3.dll
regsvr32.exe / s msxml6.dll
regsvr32.exe / s actxprxy.dll
regsvr32.exe / s softpub.dll
regsvr32.exe / s wintrust.dll
regsvr32.exe / s dssenh.dll
regsvr32.exe / s rsaenh.dll
regsvr32.exe / s gpkcsp.dll
regsvr32.exe / s sccbase.dll
regsvr32.exe / s slbcsp.dll
regsvr32.exe / s cryptdlg.dll
regsvr32.exe / s oleaut32.dll
regsvr32.exe / s ole32.dll
regsvr32.exe / s shell32.dll
regsvr32.exe / s initpki.dll
regsvr32.exe / s wuapi.dll
regsvr32.exe / s wuaueng.dll
regsvr32.exe / s wuaueng1.dll
regsvr32.exe / s wucltui.dll
regsvr32.exe / s wups.dll
regsvr32.exe / s wups2.dll
regsvr32.exe / s wuweb.dll
regsvr32.exe / s qmgr.dll
regsvr32.exe / s qmgrprxy.dll
regsvr32.exe / s wucltux.dll
regsvr32.exe / s muweb.dll
regsvr32.exe / s wuwebv.dll:: —– Resetting Winsock —–
call: print Resetting Winsock.
netsh winsock reset:: —– Resetting WinHTTP Proxy —–
call: print Resetting WinHTTP Proxy.if% family% EQU 5 (
proxycfg.exe -d
) else (
netsh winhttp reset proxy
):: —– Set the startup type as automatic —–
call: print Resetting the services as automatics.
sc.exe config wuauserv start = auto
sc.exe config bits start = delayed-auto
sc.exe config cryptsvc start = auto
sc.exe config TrustedInstaller start = demand
sc.exe config DcomLaunch start = auto:: —– Starting the Windows Update services —–
call: print Starting the Windows Update services.
net start bitscall: print Starting the Windows Update services.
net start wuauservcall: print Starting the Windows Update services.
net start appidsvccall: print Starting the Windows Update services.
net start cryptsvccall: print Starting the Windows Update services.
net start DcomLaunch:: —– End process —–
call: print The operation completed successfully.echo.Press any key to continue. … …
pause> nul
goto: eof
:: / ********************************************* ************************************* /
Save the text document along with the inserted commands, and then rename it to “WindowsUpdateReset.bat”. Next, double-click the left mouse button on the created batch file and follow the reset of the Update Center components. The process will complete very quickly. Once it’s over, restart your computer and check for error 0x80246010.