Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I work from home, but I'm also in the office quite often. My work and home machines are both Windows 7 Ultimate.

When I'm in the office I like my computer to go to screen saver fairly quickly and then lock ("On resume, display logon screen").

But when I'm home, I often do something on my home computer for a good length of time, and I don't want the remote session to lock and require a password when I switch back over to it.

I'm looking for a (Group Policy?) setting that can turn off the screen saver only for remote sessions. Is this possible?

share|improve this question
So the workaround for now is, when I'm connected remotely if I uncheck the "On resume, display logon screen" box on the screen saver settings window, this prevents the behavior altogether. I was worried I would have to change my screen saver to "none", but just unchecking the box does it. Less than ideal as I have to remember to recheck it when I go into the office, but I don't think there's a separate setting for this for console vs. remote. – sliderhouserules Jul 16 '10 at 18:46
Having the same question, but asked it over on SuperUser here: ... but no solution here or there :-| – 0xC0000022L Oct 3 '12 at 12:51

You could make shortcuts to enable/disable your screensaver. I know it's not ideal, but this solution can be done in a few seconds instead of banging your head trying to figure out something automated. That said, if someone more knowledgeable than me can find a way to have a login script only run on remote logon/logoff, then you're set :)

Create a file disable-screensaver.reg with this:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Control Panel\Desktop]

Then create a shortcut to regedit.exe /s disable-screensaver.reg. The enable shortcut is the same but with "ScreenSaveActive"="1" instead of 0.

share|improve this answer
Thanks, this was what I was going to look at for a permanent workaround if I couldn't find a "pure" solution. – sliderhouserules Jul 17 '10 at 8:45

You might be able to do that with the loopback feature of gpo.

Loopback processing enables you to apply user specific policies depending on the OU in which the computer object is that the user is logging on to. So first create a OU "Terminalserver" or whatever and move your terminal servers into this OU. Create a GPO "Loopback" or whatever, enable the Loopback setting, and link this GPO to the Terminalserver OU. Then you can create additional GPOs with user configuration settings linked to the Terminalserver OU. These policies will be applied to all users logging on to these workstations. To exclude administrators, use the security group filtering. Do the following: For every GPO, create a global security group named, for example, GPol (*G*lobal *Pol*icy group for GPO ). Make the desired users member of this group. In the security settings for the GPO, remove the "Apply Policy" and "Read policy" right for the default "Authenticated Users", add it for the proper security group instead.

share|improve this answer
If I understand correctly, this would work for disabling the screen saver for all users (remote or on the console) for specific computers? (Rather than a setting that depends on how the user connects: locally or remote.) – Richard Jul 16 '10 at 8:38
This seems a lot more involved than I was hoping for. I don't want to set Group Policy on the domain, just my local (work) machine. Thanks for the feedback though. – sliderhouserules Jul 16 '10 at 18:43

I was able to accomplish this with TaskScheduler and Windows Event Viewer logging.

You will need 2 batch scripts. One to disable the checkbox to require password on screensaver unlock and another to re-enable it when your RDP session is over.

Disable script:

reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /f /v ScreenSaverIsSecure /t REG_SZ /d 0

Enable script:

reg add "HKEY_CURRENT_USER\Control Panel\Desktop" /f /v ScreenSaverIsSecure /t REG_SZ /d 1

Have your disable event trigger on Event ID 1149 under TerminalServices-LocalSessionManager

Have your re-enable event trigger on Event ID 24, same place.

TaskScheduler example


share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.