WMI Error 0XC0000301 – The WMI Service Is Unavailable
This error means WMI (Windows Management Instrumentation) stopped or crashed. Usually caused by a corrupted repository or permissions issue. Fix it by rebuilding the repo or restarting the service.
1. Corrupted WMI Repository (Most Common)
The culprit here is almost always a corrupted WMI repository. When the repository gets borked — usually after a failed update, disk full, or abrupt shutdown — WMI can't load its schema and throws 0XC0000301. You'll see this on Server 2016/2019 and Windows 10/11 when running WMI-dependent tools like SCCM or PowerShell scripts that query WMI.
Don't bother reinstalling WMI — you can't. Instead, rebuild the repository using these steps:
- Open an elevated Command Prompt (Run as Administrator).
- Stop the WMI service:
net stop winmgmt - Rename the repository folder (keeps a backup):
ren %windir%\System32\wbem\repository repository.old - Start the WMI service:
net start winmgmt - Recompile the MOF files to restore default schema:
for /f %s in ('dir /b /s %windir%\System32\wbem\*.mof') do mofcomp %s
This takes 5-10 minutes on a modern server. After it finishes, restart the machine or the service. Test with wbemtest – connect to root\cimv2 – if it loads without 0XC0000301, you're golden.
Pro tip: If the repository won't rebuild, delete the .old folder and run winmgmt /resetrepository instead. Same result, slightly faster.
2. WMI Service Account Permissions
Second most common cause: the WMI service is running under the wrong account or its permissions got nuked. This happens after a domain group policy change or when someone fiddles with service accounts. The error pops up when WMI tries to access resources it no longer has rights to.
Check the service account first:
- Run
services.mscand locate Windows Management Instrumentation. - Right-click > Properties > Log On tab.
- Make sure it's set to Local System account – not Network Service or a custom user.
- If it's already Local System, check the DCOM launch permissions.
To fix DCOM permissions:
- Open Component Services (dcomcnfg).
- Expand Component Services > Computers > My Computer > DCOM Config.
- Find Windows Management and Instrumentation – right-click > Properties.
- Go to Security tab – under Launch and Activation Permissions, click Edit.
- Add LOCAL SERVICE and NETWORK SERVICE – grant both Local Launch and Local Activation.
- Restart the WMI service.
Skip resetting the entire DCOM ACL unless you're desperate – it breaks more things than it fixes.
3. WMI Quota Limits (Rare but Real)
Seen this on busy terminal servers or SQL servers running tons of WMI queries. The WMI provider has a memory quota that, when exceeded, kills the service. You'll see 0XC0000301 alongside Event ID 10 in the Windows Logs > System.
Bump the quota through the registry:
- Open Registry Editor (regedit).
- Go to
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WBEM\CIMOM - Look for MemoryPerHost – DWORD value. If missing, create it.
- Set it to 0 – this disables the per-host quota limit.
- Also check MaxMemoryPerHost – if it's there, set it to 0 too.
- Restart the WMI service.
Don't set these to ridiculously low values like 50 MB. 0 means unlimited – safe for modern hardware.
Warning: This fix is for advanced users. Changing registry values incorrectly can hose your system. Take a backup of the key first.
Quick-Reference Summary Table
| Cause | Signs | Fix |
|---|---|---|
| Corrupted WMI repository | Error after failed update or disk full | Rebuild repository: winmgmt /resetrepository or rename + recompile MOF |
| Service account / DCOM permissions | Error after GPO change or account modification | Set service to Local System; grant DCOM launch rights to LOCAL SERVICE and NETWORK SERVICE |
| Memory quota exceeded | Event ID 10 in System log; busy server | Set MemoryPerHost and MaxMemoryPerHost to 0 in registry |
Start with the repository rebuild — that fixes 80% of these errors. If that fails, check permissions. The quota issue is rare but worth knowing about when you're troubleshooting a loaded server.
Was this solution helpful?