0x00001B5D: Remote Desktop event log registry fix
Remote Desktop session fails because the event log registry key can't be written. The fix is usually permissions on EventLog or a corrupted key.
Cause 1: Permissions on the EventLog registry key are locked down
What's actually happening here is the Remote Desktop Session Host service (TermService) tries to create an event source entry under HKLM\SYSTEM\CurrentControlSet\Services\EventLog\TerminalServices when a user connects. If that key or its parent doesn't have the right permissions for the NETWORK SERVICE account — which the service runs as — you get 0x00001B5D. I've seen this most often after a third-party security tool or a group policy locked down registry permissions too aggressively.
The fix is straightforward: restore default permissions on the EventLog key.
Step-by-step fix
- Open Regedit as Administrator.
- Navigate to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog. - Right-click
EventLog, select Permissions. - Click Advanced. Make sure the owner is
NT AUTHORITY\SYSTEM. If not, change it. - Verify these entries exist with Full Control over This key and subkeys:
SYSTEM— Full ControlAdministrators— Full ControlNETWORK SERVICE— Read
- Add
NETWORK SERVICEif missing. Apply and exit. - Restart the Remote Desktop Services service (TermService).
The reason step 5 works is because NETWORK SERVICE only needs Read permission on EventLog itself — it creates subkeys under it (like TerminalServices) using inherited permissions. If that inheritance is broken, the write fails. You can test the fix by connecting via RDP again; the error should disappear.
Cause 2: The TerminalServices event log key is corrupted or missing
Sometimes the key HKLM\SYSTEM\CurrentControlSet\Services\EventLog\TerminalServices is present but has a bad subkey or value that prevents the service from writing to it. This happens after a failed update or a manual registry edit gone wrong. The error event in the System log (Event ID 6000 source TermService) often points to this.
Skip trying to repair individual values — the cleanest fix is to delete and recreate the key.
Steps
- Open Regedit as Administrator.
- Go to
HKLM\SYSTEM\CurrentControlSet\Services\EventLog\TerminalServices. - Export that key as a backup (right-click → Export).
- Delete the
TerminalServiceskey. - Restart the Remote Desktop Services service. It will recreate the key with default values on the next connection attempt.
- Try an RDP connection.
The reason deleting works is the service uses internal defaults to regenerate the key when it initializes. If the existing key has bad data — like a missing EventMessageFile value — the service can't write entries and fails. Letting it start fresh removes that.
Cause 3: Group Policy blocks event log writes
On domain-joined machines, a Group Policy might restrict which accounts can write to the EventLog registry. Look for the policy Restrict Remote Desktop Services event logging under Computer Configuration\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Connections. If enabled and set to Disabled, it blocks the event source creation entirely.
The real fix is to set that policy to Not Configured or Enabled with the logging level set to at least Errors and Warnings. Then run gpupdate /force from an admin command prompt and restart the service.
Quick-reference summary
| Cause | Check | Fix |
|---|---|---|
| Permissions on EventLog key | Check NETWORK SERVICE has Read on HKLM\...\EventLog | Restore default permissions |
| Corrupted TerminalServices key | Event ID 6000, key has missing values | Delete and recreate the key |
| Group Policy restriction | Check GP for "Restrict RDS event logging" | Disable policy or set to not configured |
Was this solution helpful?