Windows 7 Multiple Concurrent Remote Desktop Sessions

I’m frequently being asked how to enable multiple concurrent remote desktop (RDP) sessions on windows 7 (in an old popular post I presented a solution for winxp, but hey, we’re already in the windows 7 era…). To be honest, I didn’t have much time to explore this issue up until today (when I actually needed to find a solution for my own personal use).

So just before pulling out my hacking kit, I decided to give good’ol Google a shot and see if someone has already done the “dirty” work for me… and I’m happy to let you know that someone did (actually it was a bunch of guys) – 4 cool guys from WinMatrix forum (Pinobigbird, untermensch, cocoa & Shipit).

So just before I’ll continue to the howto, I’ll give a short background explanation on why do we need this patch anyway:
Windows 7 has a built in remote desktop (RDP) feature that is limited by default to one concurrent user per session. Which means, that if two users are trying to connect the same machine at the same time, they can’t (actually they can, but the last user who logs in will kick out the user who is already logged in). So what I present here is a solution to allow multiple users with different or similar accounts to simoultaniously login to a windows 7 machine via RDP, by using a patched version of termsrv.dll.

So back to the cool patch by the WinMatrix guys… well, they’ve created a very nice package to contains the following files:
install.cmd – this is the script you’ll have to run
32_termsrv.dll – a patched version of termsrv.dll for x86
64_termsrv.dll – a patched version of termsrv.dll for x64

In order to use it, you’ll have to extract the files to a new folder and execute with administrator privileges (run as administrator).
When you run the install.cmd, you can use the following switches (remove the quotes):
“help” – quick help
“multi Enable” – enable multiple remote desktop sessions per user
“blank Enable” – enable remote logon for accounts which are not password protected

To download the package, click here

I found another patch by TCP-Z, that suppose to be better and support all Windows versions. However, since some users reported problems with this new patch, I’ve decided to keep the link to the old patch if someone needs it.
You can download the new patch from here: UniversalTermsrvPatch_20090425_by_TCP-Z.zip

IMPORTANT NOTE: this patch is valid for Windows 7 only! (if you’re looking for similar patch for Windows XP, visit our older post at: http://www.howtechnews.com/2008/05/17/enabling-multiple-concurrent-remote-sessions-on-windows-xp-sp3-patched-file-included/)

Just for the reference, here’s a transcript of their hex magic:

x86 Hex edit

find:
00 3B 86 20 03 00 00 0F ** ** ** **
replace:
00 B8 00 01 00 00 90 89 86 20 03 00

find:
FF 43 50 C7
replace:
FF 90 50 C7

find:
F8 74 2F 68 ** **
replace:
F8 E9 2C 00 00 00

x64 Hex edit

find:
8B 87 38 06 00 00 39 87 ** ** ** ** ** ** ** ** ** **
replace:
B8 00 01 00 00 90 89 87 38 06 00 00 90 90 90 90 90 90

find:
60 BB 01 00 00 00
replace:
60 BB 00 00 00 00

find:
50 00 74 18 48 8D
replace:
50 00 EB 18 48 8D