Windows Error 0x80070005: Access Denied - Quick Fixes
This error means Windows can't access a file or registry key due to permission issues. Here are three concrete fixes, starting with the most common.
The Most Common Cause: Corrupted Registry Permissions
I’ve seen this error pop up more times than I can count, usually when you're trying to install a Windows Update, run a Microsoft Store app, or access a system folder. The root cause? A registry key that’s lost its proper permissions—especially the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing key. This tripped me up the first time too. It’s infuriating because Windows just says “Access Denied” without telling you what’s broken.
Here’s the fix:
- Press Win + R, type
regedit, and hit Enter. - Navigate to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing. - Right-click the Component Based Servicing key, choose Permissions.
- In the Permissions window, click Advanced.
- At the top, next to Owner, click Change.
- Type
SYSTEMinto the object name box, click Check Names, then OK. - Check the box Replace owner on subcontainers and objects.
- Apply and close everything.
This usually solves it. I’ve fixed this on Windows 10 22H2 and Windows 11 23H2 with that exact sequence. Restart your PC and try the update or action again.
Second Cause: System File Corruption (SFC and DISM)
If the registry fix didn’t work, the next suspect is a corrupted system file—often wuapi.dll or catroot2 folder issues during Windows Update. This happened to a client who tried to update from Windows 10 2004 to 22H2 and got the 0x80070005 error halfway through. Here’s what I do:
- Open Command Prompt as Administrator. (Right-click Start > Windows Terminal (Admin) on Windows 11.)
- Run
sfc /scannow. Let it finish. It’ll repair any protected system files it finds. - After that, run
DISM /Online /Cleanup-Image /RestoreHealth. This rebuilds the system image using Windows Update as the source. - Restart your PC.
If SFC says it found corrupt files but couldn’t fix them, don’t panic. The DISM command usually handles that. I’ve seen DISM fix issues that SFC couldn’t touch—especially after a failed cumulative update. Also, if you’re offline, you can specify an alternate source like a Windows install ISO: DISM /Online /Cleanup-Image /RestoreHealth /Source:C:\RepairSource\Windows /LimitAccess.
Third Cause: Ownership of the WindowsApps Folder
This one’s specific to Microsoft Store apps. If the error pops up when trying to install or update an app like Xbox, Netflix, or Calculator, the C:\Program Files\WindowsApps folder is usually locked down by TrustedInstaller. You can’t directly access it without taking ownership. I’ve had to do this for users who accidentally changed permissions and broke everything.
Warning: Don’t mess with this folder unless you have to. Messing up permissions here can brick Store apps. But here’s how to fix it if you’re stuck:
- Open Command Prompt as Administrator.
- Take ownership:
takeown /f "C:\Program Files\WindowsApps" /r /d y - Grant your user full control:
icacls "C:\Program Files\WindowsApps" /grant %USERNAME%:F /t - Restart your PC.
After the fix, I strongly recommend resetting the Store apps with wsreset.exe to clean things up. This command clears the cache and re-registers default app packages. I’ve seen this fix the 0x80070005 error for Store apps on both Windows 10 and Windows 11.
Quick-Reference Summary Table
| Cause | Symptoms | Fix |
|---|---|---|
| Corrupted Registry Permissions | Error during Windows Update, system tweaks, or service startups | Change owner of Component Based Servicing to SYSTEM |
| System File Corruption | Error 0x80070005 during updates or software installation | Run SFC /scannow then DISM /RestoreHealth |
| WindowsApps Folder Ownership | Error when installing/updating Store apps | Takeown + icacls to grant your user full control |
If none of these work, you might be dealing with a malware infection or a faulty driver—run a full Defender scan and check Event Viewer for more clues. But in 9 out of 10 cases, one of these three fixes gets you past 0x80070005.
Was this solution helpful?