Concurrent Remote Desktop (CRDP) for Windows 10

You are checking the helpdesk and a new problem rolls in. You know the solution but you (the administrator) will need to login. You immediately remote into the machine only to see that the user is showing a presentation or actively using it.

Do you:

A) Call the user and have them log off so that you can start fixing the problem. The problem will get fixed but the user is interrupted for 20 minutes.

B) Wait until later in the day and hope the user isn’t using their computer. The problem will get fixed at the end of the day but the user had to deal with it all day.

C) Use RDP and log into the computer. The user is able to continue the presentation. You are able to fix the problem in the background. Everybody is happy!

The answer is C!

“That’s wrong!”, you say! “Client OSs can’t have concurrent RDP sessions. When you try, you get an ugly message and the current logged in user is logged out!”

If Server can, the client can! All we have to do is trick it! How? Let’s find out!

Starting off, I am going to make two assumptions. One – you are an administrator of these remote machines. Two – you can already RDP into these machines when no user is logged on. If you aren’t sure or haven’t configured these settings, see this article on where to locate these settings.

XCOPY will copy over all of the files and PSXEC will execute the script. After it has finished, you will be asked to login with your administrative account. Just to show you how awesome this is, take a look at these screenshots.

A Standard User Logged On

An Administrator Logged on at the Same Time (Notice the Task Manager).

Zoomed in Task Manager Showing User Sessions:

Pretty awesome right! Now you can work on a computer at the same time as a standard user!! There are some caveats to this method. First, it currently only works on Windows 7. I’ve seen some Windows 8 methods but they are quite shady. Second, Microsoft released an update to patch Remote Desktop Connection. This update (2984972) broke this tool. You can remove this update by running wusa /uninstall /quiet /norestart /kb:2984972 . A big thanks to TenNine for researching that problem!

Concurrent Remote Desktop allows you (the administrator) to simultaneously use a client computer while a standard user is still interactively using it. For IT, this is huge! Imagine never having to kick a person off of their computer because you need to work on it. Concurrent Remote Desktop (CRDP) makes this possible. This guide will cover CRDP setup for Windows 10.

Two Interactive Sessions on Windows 10 v1511

Back in the age of Windows 7, we published the first CRDP setup guide here. If you haven’t read it, do so now – it provides background information and some troubleshooting tips. For those of you that have already read it (or just don’t like prequels), let’s enable CRDP for Windows 10!

Step 2: Edit the CRDP.bat file. Change the \\Server\Share\CRDP\ path to your network location. Leave all of the other settings at their default values.

Step 3: Copy the CRDP.bat file to the root of your user profile. To launch a CRDP session, run CRDPComputerName . This will launch the CRDP.bat file and target it to the remote machine name that you specified. It will then work its way through the install.cmd file to enable CRDP.

Running CRDP from the local user profile.

Caveats and Tips for Using Concurrent Remote Desktop

CRDP is dependent on the client OS that you are running. It works by modifying a few registry keys and replacing the termsrv.dll with one that doesn’t check for a logged on user. It will also enable the RDP firewall rule (if not enabled). You technically only need to run this once per machine but I find it easier to run it anytime that I am connecting to a remote computer.

There are a few things you need to know about CRDP though. First, this package only works on Windows 10 x64 installations. It will should work on any edition (that has RDP built in) and any update version. The important thing is that C:\Windows\System32\termsrv.dll is at version 10.0.10240.16384. Unless Microsoft patches this file in the future, your termsrv.dll should be this version.

The currently supported Windows 10 termsrv.dll version.

Second, this script makes the assumption that you are an administrator on the local machine. If you aren’t, fix that now. Finally, don’t run this against your own machine. Because it allows multiple sessions for the same user, you would never be able to join your original session. If you do need to restore the termsrv.dll file, just delete the existing one and rename the termsrv.dll.old file to termsrv.dll.

In this guide, we configured CRDP for Windows 10 X64 installations. If you have any questions or thoughts, let me know in the comment section below.

17 thoughts on “Concurrent Remote Desktop (CRDP) for Windows 10”

Very unhappy! Fall Creators update 1709 finally broke this particular patch. Since there is not a 1709 Windows Server 2016 GUI yet released (at least that’s what my research shows) there is probably no way to get this to work yet.

It is a dirty hack that replaces 2 files of the client OS with the respective server versions (termsrv.dll and rdpclip.exe). Since there is no 32 Bit server version anymore where we can get the files from – no chance to get it to work on 32 bit.

BTW: I’m almost absolutely sure that this hack is a license violation – but it’s up to the user (you) to verify and judge 🙂

Remote Assistance allows you to share the screen/mouse/keyboard with an actively logged on user. CRDP allows you to start another user session on the computer without interrupting the logged on user. Let’s say a user asks you to uninstall a piece of software – you could launch a CRDP sessions – go to control panel – uninstall the program – and log off without the user even knowing.