STATUS_CTX_WINSTATION_NAME_COLLISION 0XC00A0016 Fix
Quick fix: delete the orphaned RDP-Tcp listener registry key. That session name collision means Windows Remote Desktop thinks a name you're using is already taken by a dead session.
Quick Answer
Delete the orphaned RDP listener registry key at HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp and restart the Remote Desktop service. No reboot required.
What's Actually Happening Here
This error (0XC00A0016) shows up when you try to start an RDP session — typically via mstsc /admin or a custom listener — and Windows tells you the session name is already taken. The root cause is almost always an orphaned RDP listener registry key. What happens is: the Remote Desktop service (TermService) creates a listener named RDP-Tcp on startup. If that key gets corrupted or left behind after a crash, service restart, or a failed RDP session, the next attempt to create a listener with the same name fails because the registry still holds the old one.
I've seen this most often after a forced reboot of a Windows Server 2019 or 2022 box where an admin session was left open. The session itself dies, but the registry key sticks around like a zombie. The error message doesn't give you much — just that vague "session name is already in use" line. But the code tells the story: this is a Terminal Services name collision, not a network or credential issue.
Fix Steps
- Open Regedit as Administrator. Press Win+R, type
regedit, right-click and run elevated. - Navigate to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations. - Look for a subkey named
RDP-Tcp(or whatever custom name you used — if you're using a custom listener, it'll be that name). If it exists, that's your orphan. Delete it (right-click → Delete). - Restart the Remote Desktop Services — open Services.msc, find
Remote Desktop Services(TermService), right-click and select Restart. Or from an admin command prompt:net stop TermService && net start TermService. - Try your RDP connection again. It should work now.
The reason step 3 works is that the WinStations registry key is where Terminal Services stores listener definitions. Each listener gets its own subkey. When the service starts, it reads these keys and tries to create the actual listeners. If a stale key exists, the service fails because it thinks that name is already in use — even though no actual session is running. Deleting the key and restarting the service forces a clean slate.
Alternative Fixes If That Didn't Work
Check for Duplicate Keys
Sometimes you'll see two keys under WinStations with similar names, like RDP-Tcp and RDP-Tcp.001. Delete the extra one. The service only expects one RDP-Tcp.
Use the Command Line Instead
If Regedit is blocked or you're on a locked-down server, use reg delete. Open an admin command prompt and run:
reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp" /f
net stop TermService && net start TermService
Reset the Entire WinStations Tree (Nuclear Option)
If you've got multiple corrupted entries, you can delete the entire WinStations key and let the service recreate it. But be careful — this blows away all custom listener configurations (like custom ports or security settings). Backup first:
reg export "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations" winstations_backup.reg
reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations" /f
net stop TermService && net start TermService
Prevention Tip
This error happens when you kill RDP sessions abruptly — like pulling the power cord on a server or force-closing mstsc.exe while a listener is being created. To avoid it in the future, always log off sessions cleanly from the remote end (Start → Log off) before closing the RDP client. If you're scripting, use logoff or rwinsta to terminate sessions gracefully. Also, never manually delete registry keys under WinStations unless you know what you're doing — you can break Remote Desktop entirely if you delete the wrong one.
Was this solution helpful?