0XC00A0016

STATUS_CTX_WINSTATION_NAME_COLLISION 0XC00A0016 Fix

Windows Errors Intermediate 👁 1 views 📅 May 28, 2026

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

  1. Open Regedit as Administrator. Press Win+R, type regedit, right-click and run elevated.
  2. Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations.
  3. 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).
  4. 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.
  5. 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?