We help IT Professionals succeed at work.

Changing the screen saver timeout after login

Medium Priority
975 Views
Last Modified: 2012-08-14
I need a way to change the login timeout after a user has logged into the computer.

The user will not have access to the control panel and this needs to be something that does not require a registry change that involves a reboot.

My reasoning is we have group policies that set the logout to 10 minutes. We have about four computers we use for presentations that need this time to be reset since there is apparently no way to set a machine level policy.

I have tried a vb script and this does not work becuase these require a reboot.

Comment
Watch Question

DonNetwork Administrator
CERTIFIED EXPERT

Commented:
You CAN make it  a machine policy by using Loopback Policy
http://x220.minasi.com/forum/topic.asp?TOPIC_ID=22714 
I know you said that a group policy dictates the time,, but does it enforce it?

can u just right click on your desktop goto screen saver and over ride the default there?
DonNetwork Administrator
CERTIFIED EXPERT

Commented:
group policy refresh would just set it back
DonNetwork Administrator
CERTIFIED EXPERT

Commented:
from above link
 
Policy settings that control screen saver settings are in the USER node, not the Computer one. You want to mandate a screen saver for all users, but ONLY when those users are sitting at a given machine. The answer is a loopback policy, which says "there are indeed USER settings, but only apply them to anyone sitting at this particular COMPUTER."

Commented:
Two possibilities, create a separate OU and policy for these 4 PCs or adjust the policy refresh period so you can change it on the PC when needed and it doesn't change during a presentation.

3rd option: If these PCs aren't used for anything but presentations, perhaps you can just remove them from the domain.

Commented:
Ok, this is possible using a batch File. This does not require a reboot, but it will make the timeout unchangable, unless you delete the policy registry key back out. See below code:-
Just replace <timeout_value> with the time you want in seconds i.e for 10min <timeout_value> = 600
reg add "HKcu\Control Panel\Desktop" /v screensavetimeout /d <timeout_value> /f
REG ADD "HKCU\Software\Policies\Microsoft\Windows\Control Panel\Desktop" /V ScreenSaveTimeOut /T REG_SZ /F /D <timeout_value>
RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters ,1 ,True

Open in new window

DonNetwork Administrator
CERTIFIED EXPERT

Commented:
group policy refresh would just set it back
Commented:
No, as long as the gp refresh is set to long enough this works fine. By default I believe this is set to a fairly long time anyway. If this batch file is placed in the All Users Startup directory it will be processed on logon, but after GP processing.

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts
DonNetwork Administrator
CERTIFIED EXPERT
Commented:
yes  every 90 minutes, but instead of using a workaround that a limited user may not have access to use(write to the registry)  a simple group policy with loopback and applying to these four computers should be simple enough.
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.