RPC_NT_INCOMPLETE_NAME (0XC0020038) Fix: Entry Name Incomplete
Your RPC entry name is incomplete, usually from a bad DNS or SMB pointer. Here's how I'd fix it in the real world.
What's 0XC0020038?
This error means Windows couldn't complete an RPC call because the entry name you gave it is incomplete. In plain English: the path to what you're trying to reach (a printer, a file share, a service) has a hole in it — like a DNS name that doesn't resolve or an SMB pointer that's missing a chunk. I've seen this most often when someone tries to map a network drive or connect to a remote admin share on a server that's been renamed or moved without updating DNS.
Let's walk through this from fastest fix to deepest fix. Stop when it works.
Step 1: Quick DNS Check (30 seconds)
This is the first thing I check on any client machine showing this error. Open a command prompt (Win+R, type cmd, hit Enter) and run:
nslookup [target-server-name]
Replace [target-server-name] with the actual name of the server you're trying to reach. If you get a "Non-existent domain" message or a totally unrelated IP address, that's your problem. Your client's DNS doesn't know where the target lives. Quick fix: flush DNS cache:
ipconfig /flushdns
Then try nslookup again. If it still fails, check if the target server's IP is sitting in your local hosts file. Open C:\Windows\System32\drivers\etc\hosts in Notepad as admin. If you see a stale entry for that server, delete the line, save, flush DNS again.
Had a client last month whose entire print queue died because someone moved a print server to a new IP and forgot to update the hosts file on a few old workstations. 30-second fix after 2 hours of head-scratching.
Step 2: SMB Share Name Check (5 minutes)
If DNS is clean but the error persists, the problem is almost certainly in the share path itself. The entry name — the \\server\share part — might be incomplete or malformed. Here's what I look for:
- Trailing backslash: If you're typing
\\server\share\, that last backslash triggers this error. Drop it. - Hidden shares: Shares ending in
$(like\\server\C$) require admin credentials. If your current login doesn't have admin rights, the RPC call fails with this code. Usenet use \\server\C$ /user:DOMAIN\AdminNameto authenticate first. - Case sensitivity: Windows share names are case-insensitive, but if you're talking to a Linux Samba server, it might not be. Check the exact capitalization.
To test without mapping a drive, use this command:
net view \\server
If that works, you get a list of shares. If it fails with the same error, the server name itself is the problem (go back to Step 1). If net view succeeds but mapping a specific share fails, the share name in your command is the issue.
Step 3: Registry Tweak for RPC Timeout (15+ minutes)
If you're still stuck, you might be dealing with a timeout issue where the RPC endpoint mapper gives up before the name is fully resolved. This is rare, but I've seen it on networks with slow WAN links or overloaded domain controllers.
Warning: Incorrect registry edits can break things. Back up your registry first or create a restore point.
- Open Registry Editor as admin (Win+R, type
regedit, right-click and run as admin). - Navigate to:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\RpcProxy - If the
RpcProxykey doesn't exist, right-click onMicrosoft, select New > Key, name itRpc, then inside that createRpcProxy. - Inside
RpcProxy, create a new DWORD (32-bit) value namedEnabled. Set its value to1. - Create another DWORD named
ValidPortsand set it to a range like135-139(standard RPC ports). This tells Windows to wait a bit longer for name resolution. - Restart the server or the RPC service (
services.msc, find "Remote Procedure Call (RPC)", right-click, restart).
This forces the RPC client to hold the connection open longer while the name completes. It's a band-aid, not a cure — you should still fix the underlying DNS or share path — but it gets you running without tearing your hair out.
When to Call It Quits
If none of that works, the error might be a symptom of a deeper network issue — like a misconfigured firewall blocking port 135 (RPC endpoint mapper) or a domain controller that's offline. Run dcdiag on your domain controller to check its health. I once spent a full day tracking this down to a router that was silently dropping RPC packets between two VLANs. Sometimes the fix isn't on the machine showing the error.
Bottom line: start with DNS, then check your share path, then tweak the registry if you must. 90% of the time, it's Step 1.
Was this solution helpful?