How to Enable Concurrent Sessions in Windows 7 Service Pack 1 RTM

Feb 25 2011

Please Read

The script has been updated. The following now works properly:

  1. multi cmd line switch
  2. Home Premium
  3. Non-English Operating Systems, no need to change the script

Sorry for any inconvenience caused.

If you've been following MissingRemote for a while, you know one of our most popular series of guides is Enabling Concurrent Remote Desktop sessions. Continuing that trend we have an updated process below working with the RTM (Official Release to Manufacturing) version of Windows7 Ultimate, Professional, Home Premium and Enterprise Editions, x86 & x64 build 7601, Service Pack Build 1130.

One of the most popular articles ever at MissingRemote.com has been our guide on how to enable Concurrent Sessions for Windows Vista. For those unaware of what it is, enabling Concurrent Sessions allows you to Remote Desktop into a system that someone else is on, under a different user account, and access the system without kicking the user off. I, for example, use the feature to have MCE running on my Television, and then I remote into my main user account to access all my files without interrupting my MCE session. Special thanks to Mikinho for compiling the package below and making this all possible.

userscreensmall.jpg

***DISCLAIMER***

The following files and instructions are provided to you at your OWN RISK!! Understand that it is replacing important files, and as always, anything can happen. That being said, if you do have a problem, we have a fantastic community here to help you
rdp1

INSTALLATION INSTRUCTIONS (READ CAREFULLY)

1. First, Download the file attached below (you will need to be registered and logged in.

2. Once downloaded, extract the files into a directory (for the purposes of this guide, it will be assumed that the files have been extracted to the folder C:\Win7RDP )

3. Open Windows Explorer to the above folder

4. Right Click on "install.cmd" and select "Run as Administrator"

5. Wait for the script to run entirely. At the end, you should see something similar to the below...

rdp.png
 If you executed the command successfully, you should see this screen.

EXTRA ABILITIES

For 99.9% of folks, the above steps will be exactly what they are looking for. However, if you want to customize the abilities a bit, there are certain command strings you can run in addition. To do so,you will need to open a Command Prompt with Administrator Privileges(Start > Run > CMD > Right Click "Run As Administrator"). The other available options are: 

-? Show this help
help Save as -?
multi Enable multiple sessions per user
blank Enable remote log on for user accounts that are not password protected

For example, if you wanted to Enable multiple sessions per user, you would follow these steps:

1. Launch a Command Prompt with Administrator priveleges (Start > CMD > Right Click > Run as Administrator)

2. At the C:\Windows\System32 prompt type "cd\Win7RDP"

3. You should now be at the prompt C:\Win7RDP>

4. At the prompt, type: install multi

We hope you have enjoyed this guide from MissingRemote.com! If you have any questions, comments, concerns feel free to post in our forums link below.

Related Articles

Comments

Thanks! When I get SP1 this will be very helpful!

Has anyone tried this on a server 2008 r2 sp1 machine? if not i'll be the first, i'll report back of course.

sogetthis wrote:
Has anyone tried this on a server 2008 r2 sp1 machine? if not i'll be the first, i'll report back of course.

It isn't needed on 2008 R2.  Window Server products already allow 2 concurrent RDP sessions + 1 console.  This will not allow you to have more than that

No, that's not what i would be using this for; the problem i would like to solve is having 2 concurrent users, one on the real machine and one through RDP.

oh my this is a life saver...thanks a million!

Can you write a patcher instead of modifying the files directly? maybe MS releases updates/hotfixes which fix bugs.

MagicAndre1981 wrote:

Can you write a patcher instead of modifying the files directly? maybe MS releases updates/hotfixes which fix bugs.

Well, hence why we have a different/updated guide every time there's a new service pack build, which does in fact change the files. Not sure what a patch would do though, since the patch info would still need to be changed with the new files, no?

Mike Garcen wrote:

Not sure what a patch would do though, since the patch info would still need to be changed with the new files, no?

there are also hotfixes for the termsrv.dll like this:

http://support.microsoft.com/kb/980385

and this would override the patched file so a patcher would be better.

And yet, termsrv.dll isn't modified in that patch. It specifically says that RDP is not affected by the issue.

Mike Garcen wrote:

MagicAndre1981 wrote:

Can you write a patcher instead of modifying the files directly? maybe MS releases updates/hotfixes which fix bugs.

Well, hence why we have a different/updated guide every time there's a new service pack build, which does in fact change the files. Not sure what a patch would do though, since the patch info would still need to be changed with the new files, no?

have you overlooked my post?

MagicAndre1981 wrote:

Mike Garcen wrote:

Not sure what a patch would do though, since the patch info would still need to be changed with the new files, no?

have you overlooked my post?

I don't understand what parts confusing. termsvr.dll is a binary file. If MS makes compiles a new version and sends it out, the specific bytes that need to be changed will differ. If you have a patcher and attempt to use it on a newer termsvr.dll, it will not work, because it will be changing the wrong parts of the file. Generally patchers are used when we have a known file (or set of known files) with a specific patch (or set of specific patches) and shipping a pre-patched binary is not feasible (copyright, original is very large, etc). Binary patchers aren't generally used to provide forward compatibility. ... If a new binary is released upstream, the patcher has to be modified accordingly.

If we had the source code to termsvr.dll, things might be a bit different, as applying the same source patch to multiple revisions of code is fairly trivial. Writing a tool that can correctly patch future versions of a binary is non-trivial and in the best case scenerio, unreliable.

I just tested this on win7 ultimate sp1 x64 bit and it does not work...after patch is applied, the rdp still asks to log the other user out before it can log me in. the original win7rdp rtm patch worked like a charm before sp1 rtm was applied.

Check if %SystemRoot%\system\termsrv.dll.bak exists.  If so, rename it and then run the script again.

If that works let me know and I'll change the script to detect that properly.  I didn't update that part and I think it had (legacy) checks for termsrv.dll.bak and skipped the patch if it existed to prevent deleting a valid backup.

that worked, just deleted backups

"sfc /scannow" got rid of the hack, was trying to fix sticky notes (which it didn't...)

yes that worked! Many thanks!

Thanks for following up and letting us know that worked.  I'm exhausting and crashing out soon but I'll try and make it smarter tomorrow and post an update.  For now I'll just add a note to the guide Smile

Thank YOU for the wonderful work! It enables a client machine to work like a server.

Hi and thanks for this great patch.

Enabling multiple sessions per user is not working for me in 7 x64 SP1 RTM.

I've binary compared system32\termsrv.dll with 64_termsrv.dll to make sure it's been correctly patched, and they're identical. I've also checked HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\fSingleSessionPerUser, which is a REG_DWORD=0 and rebooted the computer twice.

Thanks.

Cheers,

mprost

What edition are you running? (Home Premium, Pro, Ultimate)

Oh, sorry, it's Ultimate (US English). The previous patch (the one for Windows 7 RTM) worked OK.

Thanks.

hi

i download the patch and it does not working for me and still i can not connect to another pc wit hremot desktop i rename termsrv.dll.bak to termsrv1.dll.bak and run again spcript but it does not work ....

please help me

Can you both send the full output of the command?  It should be something like:

Source Folder is C:\Users\mikinho-adm\Desktop\W7-SP1-RTM-RDP\, Windows is 64-bit

 

Taking ownership of C:\Windows\System32\termsrv.dll

 

SUCCESS: The file (or folder): "C:\Windows\System32\termsrv.dll" now owned by the administrators group.

Granting Administrators rights

processed file: C:\Windows\System32\termsrv.dll

Successfully processed 1 files; Failed processing 0 files

Stopping Remote Desktop Services

The following services are dependent on the Remote Desktop Services service.

Stopping the Remote Desktop Services service will also stop these services.

 

   Remote Desktop Services UserMode Port Redirector

 

The Remote Desktop Services UserMode Port Redirector service is stopping..

The Remote Desktop Services UserMode Port Redirector service was stopped successfully.

 

The Remote Desktop Services service is stopping.

The Remote Desktop Services service was stopped successfully.

 

        1 file(Drunk copied.

Copying "C:\Users\mikinho-adm\Desktop\W7-SP1-RTM-RDP\64_termsrv.dll" to "C:\Windows\System32\termsrv.dll"

        1 file(Drunk copied.

Enabling RDP

The operation completed successfully.

 

Setting fSingleSessionPerUser to 1

The operation completed successfully.

 

Setting LimitBlankPasswordUser to 1

The operation completed successfully.

 

Configuring Remote Desktop in Windows Firewall

 

Updated 1 rule(Drunk.

Ok.

 

Starting Remote Desktop Services

The Remote Desktop Services service is starting.

The Remote Desktop Services service was started successfully.

 

Pausing 5 seconds to give service time to start listening

Checking if Service is listening on port 3389

  TCP    0.0.0.0:3389           LOKI:0                 LISTENING

  TCP    10.0.0.240:3389        CHAOS:2060             ESTABLISHED

  TCP    [::]:3389              LOKI:0                 LISTENING

Service is listening

Done

Press any key to continue . . . 

Sorry, I wasn't able to reply yesterday.

Here's my output:

Source Folder is D:\W7-SP1-RTM-RDP\, Windows is 64-bit

Taking ownership of C:\Windows\System32\termsrv.dll

SUCCESS: The file (or folder): "C:\Windows\System32\termsrv.dll" now owned by th
e administrators group.
Granting Administrators rights
processed file: C:\Windows\System32\termsrv.dll
Successfully processed 1 files; Failed processing 0 files
Stopping Remote Desktop Services
The following services are dependent on the Remote Desktop Services service.
Stopping the Remote Desktop Services service will also stop these services.

   Remote Desktop Services UserMode Port Redirector

The Remote Desktop Services UserMode Port Redirector service is stopping..
The Remote Desktop Services UserMode Port Redirector service was stopped success
fully.

The Remote Desktop Services service is stopping.
The Remote Desktop Services service was stopped successfully.

        1 file(Drunk copied.
Copying "D:\W7-SP1-RTM-RDP\64_termsrv.dll" to "C:\Windows\System32\termsrv.dll"
        1 file(Drunk copied.
Enabling RDP
The operation completed successfully.
Setting fSingleSessionPerUser to 0
The operation completed successfully.
Setting LimitBlankPasswordUser to 1
The operation completed successfully.
Configuring Remote Desktop in Windows Firewall

Updated 2 rule(Drunk.
Ok.

Starting Remote Desktop Services
The Remote Desktop Services service is starting.
The Remote Desktop Services service was started successfully.

Pausing 5 seconds to give service time to start listening
Checking if Service is listening on port 3389
  TCP    0.0.0.0:3389           main:0                 LISTENING
  TCP    [::]:3389              main:0                 LISTENING
Service is listening
Done
Press any key to continue . . .

Thanks.

After applying the patch what behavior are you seeing that is improper?  Can you connect?

I can connect, but if I connect with the same user that's already logged on I take her session, i.e., multiple sessions per user is not working. This used to work OK with the patch for 7 RTM.

Thanks for your interest.

Cheers,

mprost

Can you test w/ a different user account?  I just want to see if the issue is with concurrent users or multiple logon.

Sure, I tested and the issue is with multiple sessions per user. I set up a virtual machine (7 x64 Ultimate, just like my real machine) and these are the results:

  1. SP1 but no patch applied: trying to log on with a second user results in a prompt to log off the currently logged on user (as expected).
  2. SP1, patch applied: trying to log on with a second user results in 2 concurrent sessions, one per user (as expected).
  3. SP1, patch applied: trying to log on with the user currently logged on takes over the existing session (unexpected).

Hope this helps.

Cheers,

mprost

Thanks.  Good to know that it does work for concurrent users, just not multiple.

I'll test that and provide an update when possible (won't be in the next couple hours...sorry but I have a project that needs done today as a priority)

Source Folder is C:\W7-SP1-RTM-RDP\, Windows is 32-bit

Taking ownership of C:\Windows\System32\termsrv.dll

SUCCESS: The file (or folder): "C:\Windows\System32\termsrv.dll" now owned by th
e administrators group.
Granting Administrators rights
processed file: C:\Windows\System32\termsrv.dll
Successfully processed 1 files; Failed processing 0 files
Stopping Remote Desktop Services
The following services are dependent on the Remote Desktop Services service.
Stopping the Remote Desktop Services service will also stop these services.

   Remote Desktop Services UserMode Port Redirector

The Remote Desktop Services UserMode Port Redirector service is stopping..
The Remote Desktop Services UserMode Port Redirector service was stopped success
fully.

The Remote Desktop Services service is stopping.
The Remote Desktop Services service was stopped successfully.

######################################
# Patched Already ,Config Editing... #
######################################
Enabling RDP
The operation completed successfully.
Setting fSingleSessionPerUser to 1
The operation completed successfully.
Setting LimitBlankPasswordUser to 1
The operation completed successfully.
Configuring Remote Desktop in Windows Firewall

Updated 2 rule(Drunk.
Ok.

Starting Remote Desktop Services
The Remote Desktop Services service is starting.
The Remote Desktop Services service was started successfully.

Pausing 5 seconds to give service time to start listening
Checking if Service is listening on port 3389
  TCP    0.0.0.0:3389           Vahid-A-PC:0           LISTENING
  TCP    [::]:3389              Vahid-A-PC:0           LISTENING
Service is listening
Done
Press any key to continue . . .

Can you rename termsrv.bak first and then provide the output?  Sorry, I should have mentioned that first.

ohhh i can't use SSH and VPN conection also VPN send me error #800

Neither SSH or VPN will have anything to do w/ RDP.  I don't mind helping you out w/ that as well but probably want to start a separate thread for that

no problem i test it again and first rename that file

 

Source Folder is C:\W7-SP1-RTM-RDP\, Windows is 32-bit

Taking ownership of C:\Windows\System32\termsrv.dll

SUCCESS: The file (or folder): "C:\Windows\System32\termsrv.dll" now owned by th
e administrators group.
Granting Administrators rights
processed file: C:\Windows\System32\termsrv.dll
Successfully processed 1 files; Failed processing 0 files
Stopping Remote Desktop Services
The following services are dependent on the Remote Desktop Services service.
Stopping the Remote Desktop Services service will also stop these services.

   Remote Desktop Services UserMode Port Redirector

The Remote Desktop Services UserMode Port Redirector service is stopping..
The Remote Desktop Services UserMode Port Redirector service was stopped success
fully.

The Remote Desktop Services service is stopping.
The Remote Desktop Services service was stopped successfully.

        1 file(Drunk copied.
Copying "C:\W7-SP1-RTM-RDP\32_termsrv.dll" to "C:\Windows\System32\termsrv.dll"
        1 file(Drunk copied.
Enabling RDP
The operation completed successfully.
Setting fSingleSessionPerUser to 1
The operation completed successfully.
Setting LimitBlankPasswordUser to 1
The operation completed successfully.
Configuring Remote Desktop in Windows Firewall

Updated 2 rule(Drunk.
Ok.

Starting Remote Desktop Services
The Remote Desktop Services service is starting.
The Remote Desktop Services service was started successfully.

Pausing 5 seconds to give service time to start listening
Checking if Service is listening on port 3389
  TCP    0.0.0.0:3389           Vahid-A-PC:0           LISTENING
  TCP    [::]:3389              Vahid-A-PC:0           LISTENING
Service is listening
Done
Press any key to continue . . .

From the logs it appears to be correct.  Can you confirm that you've:

1- Set the network profile to Home

2- Remote access is enabled (I set mine to Network Level Authentication)

3- That you are trying to RDP in from two DIFFERENT accounts

yes all thing is ok i can remote to that computer with my laptop ... but with my pc i can't

What error do you get?  

Remote Desktop can not connect to remote desktop for one of this reasons :

1) Remote access to server is not enabled

2) the remote computer is turned off

3) the remote computer is not available on the network

make sure the remote computer is turned on and connected to the network and that remote access is enabled

That points to a network issue on your PC, not w/ the patch or RDP itself, since you said it works from your laptop.

Try connecting to the system from your PC using the IP address instead of the computer name.

i use IP address always and it's a windows 2003 VDS that i want to connect .

Do you have it set to accept any RDP connection?

i.e.

Any plans to add the Remote Aero, Remote Aero Glass and Remote Audio patches that cocoa did over at

http://thegreenbutton.com/forums/t/79427.aspx

 

for Home Premium.

No plans but if requested I could.  I'd need to setup a Home Premium virtual.  

This is definitely requested! Laughing

all problem automatically solved!!!!!!!!! and now I can use my VPN , Remote Desktop and SSH

thank you

thanks god

Hi, I am on Windows 7 Home Premium RTM SP1 v721. I Ran the patch and it went fine. When i RDP it from my laptop, its asking me for username/password and nothing after that .. can you help me ?

Hi vahid,

I know that this is an old post, but im having the same problem. Do you remember how you solved it?

Regards,

Oscar

Not working for me either.

Had great success with W7 HP X64 RTM before the SP1 patch, able to connect from a Vista machine as well as using ezDesktop from an iPod touch.

After W7 HP SP1 RTM (v7601) - no dice. Update appears to be installing correctly as per the guide, remote desktop services listening. As soon as credentials are sent, the connection appears to be kicked off from both the Vista machine and the touch.

I'll setup a Home Premium VM to test against.  I had two users two it and reported success but I'll check it out as well.

Okay i'm having a simulare problem, but I chased it down to I can't log on to remote desktop as the same user logged onto the desktop.  Here is my setup

Windows 7 Ultimate 64bit sp1

system32\termserv.dll SHA-1 62A0622AB0A19D39A1DF6B10A96DBB20B9289418

W7-SP1-RTM-RDP\termserv.dll SHA-1 62A0622AB0A19D39A1DF6B10A96DBB20B9289418

 

I can log onto the desktop with user1 and remote desktop with user2 at the same time.  I cannot do it with the same user at both locations.

 

Output of the install (termserv.dll.bak was removed)

Source Folder is C:\programs\W7-SP1-RTM-RDP\, Windows is 64-bit

Taking ownership of C:\Windows\System32\termsrv.dll

SUCCESS: The file (or folder): "C:\Windows\System32\termsrv.dll" now owned by th
e administrators group.
Granting Administrators rights
processed file: C:\Windows\System32\termsrv.dll
Successfully processed 1 files; Failed processing 0 files
Stopping Remote Desktop Services
The following services are dependent on the Remote Desktop Services service.
Stopping the Remote Desktop Services service will also stop these services.

   Remote Desktop Services UserMode Port Redirector

The Remote Desktop Services UserMode Port Redirector service is stopping..
The Remote Desktop Services UserMode Port Redirector service was stopped success
fully.

The Remote Desktop Services service is stopping.
The Remote Desktop Services service was stopped successfully.

        1 file(Drunk copied.
Copying "C:\programs\W7-SP1-RTM-RDP\64_termsrv.dll" to "C:\Windows\System32\term
srv.dll"
        1 file(Drunk copied.
Enabling RDP
The operation completed successfully.
Setting fSingleSessionPerUser to 1
The operation completed successfully.
Setting LimitBlankPasswordUser to 1
The operation completed successfully.
Configuring Remote Desktop in Windows Firewall

Updated 1 rule(Drunk.
Ok.

Starting Remote Desktop Services
The Remote Desktop Services service is starting.
The Remote Desktop Services service was started successfully.

Pausing 5 seconds to give service time to start listening
Checking if Service is listening on port 3389
  TCP    0.0.0.0:3389           Server:0               LISTENING
  TCP    [::]:3389              Server:0               LISTENING
Service is listening
Done
Press any key to continue . . .

C:\programs\W7-SP1-RTM-RDP>

 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Website design by Yammm Software
Powered by Drupal