I have a Windows 10 Pro machine that is functioning as a RDP terminal for a single user.
This machine was configured more than 2 years ago and has had no major changes made to its configuration, except of course for the obligatory Windows 10 automatic updates.
Everything has been working fine until a few months ago, when the user started getting this error when window attempting to connect via RDC:
Remote Desktop Connection
An internal error has occurred.
I tried logging in via RDC via my Admin credentials, and I get the same error. The error appears immediately after clicking connect. There is no processing time and the connection attempt seem to be immediately rejected by the server.
I can't trace the problem down to any specific time, or event. It occurs seemingly at random. Sometimes after a few days, sometimes twice in one day.
Restarting the Windows 10 Pro machine always seems to fix the problem.
Strangely, accessing the Event Viewer
on the Windows 10 Pro machine also seemed to fix the problem, but it almost always returns much more quickly if I use this "fix".
Speaking of the Event Viewer
, these are relevant errors I found in the log related to RDC at the time that my login was rejected:
Error Event 227 RemoteDesktopServices-RdpCoreTS
General: 'Failed OnConnected to Listener callback' in CUMRDPConnection::InitializeInstance at 606 err=[0x8007050c]
Log Name: Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/Operational
Source: RemoteDesktopServices-RdpCoreTS
EventID: 227
Task Category: RemoteFX module
Level: Error
User: NETWORK SERVICE
OpCode: Runtime
Error Event 227 RemoteDesktopServices-RdpCoreTS
General: spCoreConnection is NULL!' in CUMRDPConnection::TerminalInstance at 741 err=[0x8007139f]
Log Name: Microsoft-Windows-RemoteDesktopServices-RdpCoreTS/Operational
Source: RemoteDesktopServices-RdpCoreTS
EventID: 227
Task Category: RemoteFX module
Level: Error
User: NETWORK SERVICE
OpCode: Runtime
These are some other errors I noticed in the log, but don't correspond to the moment I try to connect:
Warning Event 226, RemoteDesktopServices-RdpCoreTS
General: RDP_TCP: An error was encountered when transitioning from StateUnknown in response to Event_Disconnect (error code 0x80070040)
Warning Event 142, RemoteDesktopServices-RdpCoreT
General: TCP socket READ operation failed, error 64
Note that the client machines are also running Windows 10 Pro.
May be a bit late but this worked for me, credit to Elton Saul. Create the DWORD below and set to 10000 My next task is to find out why it has outstanding connections :)
https://social.technet.microsoft.com/Forums/en-US/e1d60cc0-0096-4859-a0e7-eb7f11905737/remote-desktop-v10-error-0x4-from-mac?forum=winRDc
A temporary workaround for this issue is to increase the maximum outstanding connections limit. On client SKUs it is 100 by default, while on server SKUs it is 3000. The following DWORD registry key controls this value:
Alternatively, you can update the same from Command Prompt as Administrator by running the following.
I've expirenced this issues several times lately, and one workaround is to connect to the machine locally if possible (or via a VmWare console).
Otherwise you can restart the Remote Desktop Services in services.msc (and say yes to also restart the dependant service).
But a permanent solution would be preferable.
Deleting saved credentials in the client.rdp session and re-entering solved the problem for me. Edit Delete
Any Windows 10 update can break anything in the system, including making it unbootable.
You will have to know when the RDP stopped working, check what update applied at that point and remove that update. TCP 64 error was found to appear after updates in several cases. So make sure you find the update that did it and also try to install update KB3200970 if you don't have it already.
You also get those messages in the RemoteDesktopServices-RdpCoreT log if there are issues with your smartcard certificate. In our case the certificate was revoked however we saw no indication of it when using Remote Desktop Connection from a Windows 10 client.
for me the issue seemed to be that i was sharing the rdp via MS cloud and saving credentials. I was not able to
delete
stored credentials as the ui was not showing the option so what i opened the .rdp file in VS code and made the following changesprompt for credentials:i:0
->prompt for credentials:i:1
gatewaycredentialssource:i:
promptcredentialonce:i:0
->promptcredentialonce:i:1
then save as to a local dir that is not stored in MS cloud so it would no happen again
Restarting the Remote Desktop Service worked for me. You don't have to conect locally to do that. In your local computer run
services.msc
then go to Action, connect to another computer, and choose the remote computer. Once connected find the service and restart it.Logging another possibility for folks to try - this just fixed connecting from my Windows 10 dev box to a 2008R2 server:
If your RDP client box has unusual crypto settings, you may get "An unexpected error has occured" when trying to connect to a perfectly normal RDP server.
I was checking that various clients could still connect to an app on my dev box with restrictive protocols, so I used Nartac's IISCrypto to set my dev box to Best Practices and rebooted. At that point, I could still connect.
Then I restricted things further, aiming for an A+ from SSL Test. Knocked out a few combinations, got my A+... and found later that I couldn't connect to anything over RDP!
So, if you've been hardening your IIS crypto beyond Best Practices and find you can't connect out from the hardened machine over RDP, try setting things back down to Best Practices.
I had this happen today. I noticed in the Security event log, numerous events each time i tried to connect:
Which told me it was trying cached credentials over and over. I went back into Remote Desktop Connection client and deleted the cached credentials:
And then re-connected, re-entered the password, and it worked.
Every single time we get that error over here is because someone is already logged in or didn't log out properly. With
query user /server:remote
(replace remote with IP address or computer name) i can see who is logged in though. You can logoff people remotely withLOGOFF [session | id_session] [/SERVER:serveur]
(RPC needs to be activated for both operation).