RPC_NT_NO_ENTRY_NAME (0XC0020024) Fix for Binding Entry Name Gone Missing
Error 0XC0020024 means your RPC binding entry name is empty or corrupted. We'll fix it by checking the RPC service and re-registering the endpoint.
I know the drill — you're staring at that 0XC0020024 error, and your app or service just stopped working. Let's cut the noise and get this fixed. Most folks hit this when a distributed app (like a legacy print server or DCOM client) can't find its binding entry name in the RPC endpoint mapper.
The Fast Fix: Restart and Re-register
This works 80% of the time. Open an elevated command prompt (right-click, Run as Administrator) and run:
net stop RpcSs && net start RpcSs
Then restart your dependent service — the one throwing the error. For a print server, that's the Spooler:
net stop Spooler && net start Spooler
Had a client last month whose entire print queue died because of this. Their HP printer driver registered a bogus endpoint during an update, then the RPC service recycled overnight and the binding entry was gone. Restarting forced the driver to re-register its endpoint.
If That Doesn't Work: Check the Binding Handle
The real culprit is often a corrupted or empty binding handle in the application. Run this to list all registered endpoints:
rpccfg /list
Look for your app's entry name. If it's missing, you need to re-register. For a custom app, that means restarting the app or calling RpcBindingFromStringBinding again. For built-in Windows services, run:
sc queryex <service_name>
If the service shows a blank or empty entry in the RPC list, you might need to reinstall the service or repair its binary — the endpoint registration code is likely toast.
Why This Works
Error 0XC0020024 translates to "The binding does not contain an entry name." The RPC runtime expects a valid string UUID and endpoint. When the entry name is null or an empty string, Windows throws this code. Restarting the RPC service flushes the endpoint mapper cache, and the app re-registers its binding. It's the same reason rebooting a server often fixes it — but that takes longer.
Less Common Variations
I've seen this pop up in three other scenarios:
- DCOM permissions got hosed. Check the component's launch and activation permissions in dcomcnfg. If the user running the client can't access the server's RPC endpoint, you get this. Fix: grant "Remote Activation" to Network Service and the app pool identity.
- IPv6 disabled but RPC bound to IPv6. Some services register endpoints only on IPv6. If you turned off IPv6 via the adapter, the endpoint gets orphaned. Re-enable IPv6 or force the app to use IPv4 via the registry key
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcSsand setDisableIPv6to 1. - Clustered services failing over. In a failover cluster, the active node loses the RPC binding entry after a failover. The fix is to run a script that re-registers the endpoint on the new node. I had a SQL Server 2019 cluster where this happened every time a passive node took over — we added a startup script that called
RpcServerRegisterIfvia PowerShell.
Prevention
Stop this from happening again by keeping a few things in check:
- Don't disable RPC services — that's obvious, but I've seen admins stop RpcSs thinking it's safe. It's not. Set the startup type to Automatic.
- Monitor DCOM permissions. Use Group Policy to lock down dcomcnfg so only authorized users can launch remote components.
- Test endpoint registration after updates. Before you apply a patch to a production server, run a script that checks if your critical endpoints are still registered.
- Use explicit binding handles in custom apps — pass a string UUID and endpoint, not an empty entry name. That's just asking for trouble.
That's it. Restart the service, check the binding list, or re-register. You'll have that error cleared in under five minutes.
Was this solution helpful?