Solution:
Root Cause: BITS Service Misconfiguration or Missing Dependencies
The Background Intelligent Transfer Service (BITS) is responsible for downloading update packages in the background. If BITS or its underlying RPC/COM dependencies are disabled, unregistered, or missing required registry access rights, update acquisition fails instantly with error 0x80070002.
Diagnostic Verification:
Press Win + R, type services.msc, and locate Background Intelligent Transfer Service. Verify if its startup type is set to Automatic (Delayed Start) or Manual, and check whether it can be started manually without throwing error codes.Step-by-Step Fix:
1Open an elevated PowerShell terminal as Administrator.
2Re-register core BITS and Windows Update DLL files by executing the following loop:
foreach ($dll in @("atl.dll", "urlmon.dll", "msxml3.dll", "shdocvw.dll", "oleaut32.dll", "shell32.dll", "inetcomm.dll", "url.dll", "fltLib.dll", "netapi32.dll")) { regsvr32.exe /s $dll }
3Reset the BITS service security descriptor to default permissions by running:
sc.exe sdset bits D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;AU)(A;;CCLCSWRPWPDTLOCRRC;;;PU)
4Set BITS startup type to automatic and start the service:
Set-Service -Name BITS -StartupType Automatic
Start-Service -Name BITS
5Restart your computer to apply system changes.
Prevention & Long-Term Monitoring:
Restrict aggressive third-party tweaking utilities from modifying core Windows service startup configurations or registry permissions.