Enable Multiple Concurrent Remote Desktop Connections or Sessions in Windows XP
Windows XP Professional and Windows XP Media Center Edition (MCE) has Remote Desktop (RDP) service that allows the computer to be remotely connected, accessed and controlled from another computer or host. However, Windows XP machine only allows one concurrent remote desktop connection from a single user been connected to it with no multiple remote desktop sessions or connections support.
Whenever there is a remote user who user Remote Desktop Connection (RDC) client to connect to a Windows XP host, the local user is disconnected with the local console screen locked, with or without his or her permission. Remote Desktop, unlike Terminal Server Services in Windows 2000, Server 2003 and Server 2008, is designed for single user use only, no matter it’s local or remote user.
Here’s a hack to unlock the single user limitation and enable multiple concurrent remote desktop connection sessions support in Windows XP Professional and Media Center Edition, using a either a patched termserv.dll or old patched cracked termserv.dll build version version 5.1.2600.2055, so that unlimited users can simultaneously connect to a computer via Remote Desktop.
- Download a copy of patched termsrv.dll (in ZIP file) which has the Remote Desktop connection limitation deactivated for your version of Windows XP:
Windows XP RTM, SP1 and SP2: termsrv.dll (version 5.1.2600.2055)
Windows XP SP2: termsrv.dll (version 5.1.2600.2180)
Windows XP SP3: termsrv.dll (version 5.1.2600.5512)For information, the termsrv.dll patch normally has the following HEX code bits overwritten with following value:
00022A17: 74 75
00022A69: 7F 90
00022A6A: 16 90 - Restart the computer and boot info Safe Mode by pressing F8 during initial boot up and select Safe Mode. This step is only required if you’re currently running Windows Terminal Services or Remote Desktop service, and System File Protection has to be skipped and bypassed, else it will prompt the following error message to restore the original termsrv.dll.

- Go to %windir%\System32 and make a backup copy (or rename) the termsrv.dll.
- Rename or delete the termserv.dll in the %windir%\System32\dllcache folder.
- Copy the downloaded termsrv.dll into %windir%\System32, %windir%\ServicePackFiles\i386 (if exist) and %windir%\System32\dllcache.
- Then download and run the ts_multiple_sessions.bat (in ZIP file) to merge the registry value into registery, or you can run Registry Editor to manually add the following registry value:
[HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Terminal Server\Licensing Core]
“EnableConcurrentSessions”=dword:00000001[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
“EnableConcurrentSessions”=dword:00000001[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
“AllowMultipleTSSessions”=dword:00000001 - Click on Start Menu -> Run command and type gpedit.msc, follow by Enter to open up the Group Policy Editor.
- Navigate to Computer Configuration -> Administrative Templates -> Windows Components -> Terminal Services.
- Enable Limit Number of Connections and set the number of connections to 3 (or more). The setting allows more than one users to use the computer and logged on at the same time.
- Ensure the Remote Desktop is enabled in System Properties’ Remote tab by selecting the radio button for Allow users to connect remotely to this computer.
- Enable and turn on Fast User Switching in Control Panel -> User Accounts -> Change the way users log on or off.
- Restart the computer normally.
Note that if you cannot replace or overwrite termserv.dll with access denied or file in use error, turn off the “Termine Services” in “Services” control panel of “Administrator Tools”. Besides, each connecting physical connections must have their own user account in the target host, and must authenticate with corresponding own user name and password credential.
To uninstall and revert back to original termsrv.dll, simply delete the patched version, and rename the backup copy back to “termsrv.dll”. You probably have to do it in Safe Mode if the Terminal Services is enabled and running.
If the Windows XP computer is connected to a domain on local networks, Windows will set the value of the regkey “AllowMultipleTSSessions” to “0″ every time the computer is restarted. To ensure that multiple or unlimited Remote Desktop connection sessions is allowed in AD domain environment, the value data for “AllowMultipleTSSessions” has to be set to “1″ on each system startup. To change the value, simply rerun the ts_multiple_sessions.bat every time the computer is started. Alternatively, put the ts_multiple_sessions.bat at C:\Documents and Settings\All Users\Start Menu\Programs\Startup folder so that it will be automatically run on first user with administrative privileges that logs on to the desktop. Another workaround is to install additional service or define a sub-key in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run registry branch that run the registry batch file automatically on boot up, and this is useful if the computer won’t be logged on by anybody, but still requires the hack to allow unlimited Remote Desktop users to work.
Another issue is that if user closes the remote connection instead of logging off, when he or she tries to log back in, an error message related to TCP/IP event ID 4226 may occur. To resolve the issue, download and apply the Windows XP TCP/IP connection limit and Event ID 4226 patch, and set the connections to at least 50.
Share and contribute or get technical support and help at My Digital Life Forums.
Related Articles
- Easily Maintain Multiple Remote Desktop Connections with visionapp Remote Desktop (vRD)
- Install and Enable Remote Desktop in Windows XP Home Edition
- Workaround for Remote Desktop Client to Connect to Localhost (Local Terminal Server Service)
- Connect to Remote Computer using Specific Non Standard Port using Remote Desktop Connection Client
- Freeware to Turn On and Enable Remote Desktop on Another Computer Remotely
- Remote Connections Manager for RDP, VNC, SSH, RLogin and More mRemote Free Download
- Turn On or Enable Remote Desktop on Windows Vista
- Modify and Change Remote Desktop Listening Port
- How to Remotely Enable Remote Desktop (Terminal Services or RDP) via Registry in Windows 2000/XP/2000/Vista/2008
- Windows XP SP2 TCP Connection Limit (Event ID 4226)

































June 15th, 2008 15:24
[...] it may be useful to patch termsrv.dll with a cracked version which allows multiple RDC sessions and users to fix some problems such as disconnection issue. It’s also good for testing by allowing connect [...]
June 27th, 2008 15:12
Your website has been hacked.
All the download links take you to http://www.ziddu.com.
I would like to download the termsrv.dll versions.
PS: Be careful with my email address!
June 27th, 2008 15:16
Changed my mind.
You use dodgy 3rd party sites.
Please delete my email address from your database.
(I observe the pigs are fed and ready for take off)
June 27th, 2008 15:40
Hi Graham, what you mean?
July 1st, 2008 21:57
Thanks - this worked perfectly.
July 9th, 2008 08:55
You can only connect 3 users to a computer running windows XP. It’s not unlimited as the article states.
July 10th, 2008 01:47
Check out the following post for instructions on how to create the service that allows it to work on a domain. Also see my July 9th post on same site for additional tips.
http://riccardo.raneri.it/blog/eng/index.php/2006/04/24/windows-xp-multiuser-remote-desktop/#comment-56153
Josh: I have tried it with 5 RDP users. I’m sure I can connect more but my test PC is low on RAM.
July 16th, 2008 23:18
[...] it may be useful to patch termsrv.dll with a cracked version which allows multiple RDC sessions and users to fix some problems such as disconnection issue. It’s also good for testing by allowing connect [...]
August 4th, 2008 04:31
[...] URL [...]
September 9th, 2008 01:23
Hi,
For all the guys out there who couldn’t get this to work. Trust me I understand , suffered through it too. Have detailed it out here what finally worked for me …
http://piglings.blogspot.com/2008/08/multiple-remote-desktop-connections-rdc.html
All the best !!
September 16th, 2008 22:20
—WORKS WITH DOMAIN—
Done with WinXP SP2. not sure results on others.
I recommend reading the whole post before beginning.
A user can only log in once, i.e. same user cannot have multiple sessions.
I have pulled information from 3 sites, including this one to make this possible. Much info was taken from user responses and i will try to document where I can.
—LINK 1—(mostly informative only)
http://www.mydigitallife.info/2008/06/13/enable-multiple-concurrent-remote-desktop-connections-or-sessions-in-windows-xp/
—LINK 2—(how to work in domain/REG file)
http://riccardo.raneri.it/blog/eng/index.php/2006/04/24/windows-xp-multiuser-remote-desktop/#comment-56153
—LINK 3—(the DLL file I used)
http://riccardo.raneri.it/blog/eng/index.php/2006/04/24/windows-xp-multiuser-remote-desktop/#comment-57567
—LINK 4—(informative, info about gpedit.msc)
http://www.golod.com/2005/10/enabling-multiple-remote-desktop-sessions-in-windows-xp-professional-and-media-center-edition-2005/
If you have problems refer to those sites (specifically those posts in the the link) and don’t be afraid to read. There may be another procedure that works but this is how i got it going. I had 5+ people logged in concurrently thru a domain. bomb.
DIRECTIONS
1) In windows explorer go to Tools > Folder Options > View…
—–CHECK show hidden files and folders
—–UNCHECK hide extensions of known files
—–UNCHECK hide protected op. sys. files
NOTE: those of you that CAN’T see a ‘dllcache’ folder (later) DO NOT have the op .sys. files viewable. there are about 200 things in that folder.
NOTE: i did the whole thing in one step by killing all ’svchost.exe’ thru task manager. sometime a few will respawn but as long as they have no ‘User Name’, especially your own, this should work. after doing this however, some aspects of the WIN OS do not behave correctly, i.e drag/drop + copy/paste. if your not comfortable with that, try the safe mode approach in the original post.
2) go to start > run and type ‘cmd’ without quotes to open a terminal/command prompt. then open task manager and go to processes. sort the processes by name and start killing svchost.exe everywhere. (i have read you only need to kill the ones with your user name, i.e. NOT local system OR network service, but i waxed them all
)
this will begin a forced shutdown. go to the terminal and type ’shutdown -a’ without quotes to abort the running shutdown. kill the remaining ’svchost.exe’ if necessary and abort the shutdown as necessary.
3) get the DLL from LINK 3 or:
(May not always be available so mirror!!)
http://tony.brokerbin.com:8008/LINKED/termsrv.dll
backup termsrv.dll in ‘c:/windows/system32′ AND ‘c:/windows/system32/dllcache’. place your new copy in both folders.
4) download this registry file i’ve wrote (auto-adds necessary keys)
(mirror this!!!)
http://tony.brokerbin.com:8008/LINKED/multiTS.reg
save the file as a ‘.reg’ (without quotes of course…). when you double click this file it should ask to ‘merge’ with the registry. click yes. if you like refer to LINK 2 and LINK 1 for manual directions.
NOTE: at this point you should be good to go for NON-DOMAIN uses. *simply* reboot and test (if it doesnt work try the steps involving gpedit.msc in the original post, not sure if its necessary, then reboot again) domain access requires a few more steps, refer to LINK 2 and LINK 1 for the reason.
5) create a folder - ‘c:/termsrv’ - and put the multiTS.reg file from earlier in there.
6) download this from MS resource kit (instsrv.exe AND srvany.exe) they allow running apps as a boot service:
http://tony.brokerbin.com:8008/LINKED/srvany.zip
that zip has both files, else find them elsewhere. put both files in ‘c:/termsrv’
7) open a terminal and run:
c:\termsrv\instsrv.exe XP3RDC c:\termsrv\srvany.exe
that will install a service and setup the registry key. all that remains is to configure that key/service….
navigate to ‘HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\XP3RDC’
Add a KEY (folder) with the following:
Key Name: Parameters
Select this newly created Parameters key and add the following STRING value:
Value Name: Application
October 3rd, 2008 14:45
I did this and had it working perfectly for several months now. Thanks a lot, it’s definitely been very useful.
However, I just restarted my computer and realized I couldn’t connect to it using Remote Desktop. After looking into the problem, I saw AVG apparently picked up the termsrv.dll as being a trojan (Trojan horse Generic11.AGPO). Any ideas what’s up with this? Is it a false detection or something? AVG scans every night so I’m guessing it’s something relatively new to their definitions.