Fix RPC_S_NOT_ALL_OBJS_UNEXPORTED (0x000006DE) Error
This RPC error usually means a DCOM object won't unexport cleanly. Most common cause: a leftover registry reference or a hung COM+ app.
You're staring at a log or a command prompt, and there it is: 0x000006DE - RPC_S_NOT_ALL_OBJS_UNEXPORTED. Translation: the RPC runtime tried to clean up a DCOM object, but something still has a hold of it. Common scenario: you're shutting down a COM+ application or unregistering a DCOM server, and this error pops up. I've seen this on Windows Server 2019 and 2022, usually after a failed software install or a badly written service.
Don't panic. This is fixable. Here's how to tackle the three most common causes.
1. COM+ Application Hangs or Leaks
This is the most common cause. A COM+ application—like a custom third-party component or an old VB6 DLL—holds onto object references and doesn't release them when told to. You'll see this when restarting the COM+ app or during system shutdown.
Real scenario: Last month, a client's ERP system stopped working after a Windows update. The event log showed 0x000006DE every time the COM+ app tried to restart. The fix? Kill the orphaned dllhost.exe process.
Fix:
- Open Component Services (run
dcomcnfg). - Expand Component Services > Computers > My Computer > COM+ Applications.
- Find the app that's throwing the error. Right-click it and choose Shut down (if running).
- If it won't shut down, open Task Manager, find
dllhost.exeprocesses with high CPU or memory, and end them. Be careful—kill only the ones tied to your COM+ app, not system ones. - Then restart the COM+ application from the same menu.
- If it still fails, open an admin command prompt and run:
to find the PID, thensc queryex dllhost
.taskkill /PID [PID] /F
This clears the stuck objects. If the error disappears, you're done. If not, move to cause #2.
2. Orphaned Registry Class References
Sometimes a DCOM class gets registered in the registry, but the underlying DLL or EXE was removed or moved. When the system tries to unexport that class, it can't find the binary, and you get 0x000006DE.
Trigger: After a failed uninstall of a COM component or a manual deletion of a program folder.
Fix:
- Open Regedit.
- Navigate to:
where GUID is the one mentioned in the error (you'll see it in the event log or the command output).HKEY_CLASSES_ROOT\CLSID\{GUID} - Check the key
InprocServer32orLocalServer32—look for the path to the DLL or EXE. - If the file doesn't exist, delete the CLSID key entirely. Back up first! Right-click the key and export it before deleting.
- If you can't find the GUID, search for the error's class name in the event log. Look under Windows Logs > System or Application for Event ID 1000 or 1001 from source COM+ or DCOM.
- Reboot. The error should stop.
This is the most surgical fix. I've used it dozens of times with leftover drivers from old VPN software.
3. Network Disconnect During RPC Export
Less common but real: if your machine is part of a cluster or uses remote DCOM, a network blip can cause the RPC runtime to think an object is still out there when it's not. The error appears only during high network load or after a network card reset.
Fix:
- Check your network adapter settings. Disable any power-saving features: Control Panel > Network and Sharing Center > Change adapter settings > right-click your adapter > Properties > Configure > Power Management tab. Uncheck "Allow the computer to turn off this device to save power."
- Reset the RPC service: open an admin command prompt and run:
.net stop rpcss && net start rpcss - If it's a cluster issue, check cluster logs with
—look for network partitions.cluster log - For non-cluster machines, a simple network stack reset helps:
then reboot.netsh int ip reset
One client had this on a Hyper-V host with flaky NIC drivers. A driver update killed it.
Quick-Reference Summary Table
| Cause | Symptom | Fix |
|---|---|---|
| COM+ app hangs | Error on app restart or shutdown | Kill dllhost.exe, restart COM+ app |
| Orphaned registry key | Error after uninstall or file deletion | Delete stale CLSID key |
| Network disconnect | Error under network load or after reset | Disable NIC power save, reset RPC service |
In my experience, cause #1 accounts for about 70% of these errors. Start there. If you're still stuck, check the Application event log for a class ID—that will point you straight to the culprit. Don't waste time re-registering DLLs randomly; be methodical.
Was this solution helpful?