0x80004005
Microsoft Windows
Severity: ModerateWhat it means
Windows error 0x80004005 is the generic 'Unspecified error' COM error code.
The verbatim text varies a lot by where it appears: 'Error 0x80004005: Unspecified error' in file operations, 'Operation could not be completed (error 0x80004005)' in network shares, 'The specified module could not be found (0x80004005)' in Outlook.
Because Windows uses it as a catch-all whenever a more specific code isn't available, the fix depends heavily on WHERE the error appeared.
This page walks through the most common contexts and their specific fixes.
Affected Models
- Windows 11 and Windows 10 (every version)
- Common in Windows Update, Outlook, File Explorer network shares, VirtualBox, and Hyper-V
- Also appears in MS-Office sign-in failures
- Common when copying to or from older network shares using SMBv1
- Same code, different contexts — the fix depends on which app/operation triggered it
Common Causes
- SMBv1 deprecated and the network share you're accessing only supports SMBv1
- Outlook .pst or .ost file corrupted
- Windows Update components in inconsistent state
- Hyper-V or VirtualBox VM configuration file corrupt
- Antivirus blocking the operation silently
How to Fix It
-
Identify where 0x80004005 appeared.
Was it during a file copy? Outlook? Windows Update? A VM start? An Office sign-in?
The fix depends on the context.
Open Reliability Monitor (type 'reliability' in Start) to see which application logged the error if you're not sure. -
Fix for network share / file copy: enable SMBv1 (if you must).
If 0x80004005 appears copying to or from a NAS or old Windows Server share, the share may only speak SMBv1 — which is disabled by default on modern Windows.
Settings > Apps > Optional features > More Windows features > tick 'SMB 1.0/CIFS File Sharing Support' > OK.
Restart and retry.
Important: enable SMBv1 only on trusted local networks — it has known security flaws and shouldn't be used over the public internet. -
Fix for Outlook: rebuild the data file.
If 0x80004005 appears in Outlook with text like 'The specified module could not be found', the .pst or .ost is the problem.
Close Outlook.
Run scanpst.exe (find it in C:\Program Files\Microsoft Office\rootXX\OfficeXX\, replacing XX with your version).
Point it at your .pst or .ost file.
Let it scan and repair.
Reopen Outlook. -
Fix for Windows Update: reset components.
Open Command Prompt as Administrator and run:
net stop wuauserv
net stop bits
ren C:\Windows\SoftwareDistribution SoftwareDistribution.old
net start wuauserv
net start bits
Then retry the update.
This rebuilds the update working folder and clears most 0x80004005 update cases. -
Fix for VirtualBox / Hyper-V: check Hyper-V conflict.
VirtualBox and Hyper-V conflict — only one can use the CPU virtualization extensions at a time.
If you installed Hyper-V (or WSL, which uses it) after installing VirtualBox, VirtualBox returns 0x80004005 on VM start.
Open Windows Features and disable Hyper-V and Windows Hypervisor Platform (or, if you want both, install VirtualBox 6.1+ which supports running under Hyper-V at reduced performance).
Restart.
VirtualBox VMs start cleanly again. -
Fix for antivirus interference: temporarily disable.
Some third-party AV products block file-system or registry writes and return 0x80004005 to the calling app.
Right-click the AV tray icon > Disable for 1 hour.
Retry the operation.
If it works, add an exclusion in the AV for the path or process that triggered it.
When to Call a Professional
Error 0x80004005 doesn't need professional service.
The biggest trap is treating it as one error — it's really 'some error, no detail'.
Match the symptom (Outlook, network share, Windows Update, VM) to its specific fix below.
If you can't tell which symptom you have, the Reliability Monitor (reliability in Start) often shows what process logged the 0x80004005 — that points you at the right fix.
Frequently Asked Questions
Why does Windows use the same 0x80004005 code for completely different problems?
0x80004005 is the COM 'unspecified error' code (E_FAIL).
When a Windows component hits an error it can't classify into a more specific code, it returns E_FAIL to the caller — which the user sees as 0x80004005.
That's why a network-share error, an Outlook data file error, and a Windows Update error all show the same code despite having nothing in common.
The fix always depends on the calling app, not on the error code itself.
This is also why generic 'fix 0x80004005' web articles rarely help — they're trying to apply one fix to a code that means dozens of different things.