快速业务通道

用vbscript实现修改屏幕保护的等待时间长度

作者 佚名 来源 ASP编程 浏览 发布时间 2013-07-09
问:
嗨,ScriptingGuy!是否可以使用脚本来修改计算机上屏幕保护的等待时间长度?
--JN
答:
嗨,JN。出于某些原因,Microsoft的脚本技术在涉及Windows设置和组件方面有些不足,例如屏幕保护、墙纸、任务栏和开始菜单等等。您可以使用WMI(尤其是Win32_Desktop类)来读取这些值,但不能使用Win32_Desktop类(或是任何等价的类或对象)来修改这些值。为什么呢?老实说,我们也不知道;
幸好,这些值大都存储在Windows注册表中,而只要这些值存储在注册表中,您就可以编写脚本来管理它们。屏幕保护程序也不例外。打开Regedit,让我们来看看HKEY_CURRENT_USER内部;在ControlPanel\Desktop项中,您将会看到几个与屏幕保护程序有关的注册表值,包括ScreenSaveTimeout。您可能猜到了,这就是确定屏幕保护等待的时间长度的注册表值。默认情况下,这个值被设置为600秒,也就是10分钟。
那么,如何更改这个值呢?通过使用如下的脚本可以将等待时间更改为5分钟(300秒):
HKEY_CURRENT_USER=&H80000001
strComputer="."
SetobjReg=GetObject("winmgmts:\\"&strComputer&"\root\default:StdRegProv")
strKeyPath="ControlPanel\Desktop"
objReg.CreateKeyHKEY_CURRENT_USER,strKeyPath
ValueName="ScreenSaveTimeout"
strValue="300"
objReg.SetStringValueHKEY_CURRENT_USER,strKeyPath,ValueName,strValue
为了达到这个目的,我们首先创建一个名为HKEY_CURRENT_USER的常量,并将它的值设置为&H80000001;这告诉WMI的注册表提供程序,我们正在处理注册表的HKEY_CURRENT_USER部分。如果我们要处理HKEY_LOCAL_MACHINE,那么我们就需要将常量设置为&H80000001;将常量设置为&H80000003则可以处理HKEY_USERS。
由于我们在本地计算机上执行这个脚本,因此我们将变量strComputer设置为点(在WMI中表示本地计算机的快捷方式)。注册表提供程序的出色之处在于,它可以在远程计算机上工作,并且性能和在本地计算机上一样好。因此如果您希望更改远程计算机上的屏幕保护等待时间,只需将strComputer的值设置为那台计算机的名称即可。
从此时开始,我们连接到WMI服务,并指定注册表路径(ControlPanel\Desktop)。接下来我们将调用CreateKey方法。这是为了保险起见。因为如果我们查找的注册表项不存在,则CreateKey就会创建这个注册表项。如果注册表项已经存在,那么CreateKey将会保留这个注册表项。
在指定要更改的注册表值名称(ScreenSaveTimeout)以及新值(300)之后,接下来我们使用SetStringValue方法来将等待时间更改为300秒。
还不算太坏,是吧?有关注册表提供程序——可能是所有WMI提供程序中最不常用的一个了——的更多信息,请参阅“MicrosoftWindows2000脚本指南”中的“注册表”一章。并访问声名不佳的Tweakomatic,这个令人惊奇的实用工具可以编写可对注册表进行读写操作的脚本。为了从传统商业中沾光,它使用了Tweakomatic的名字,这的确大有好处。
顺便提及,以下是另一个比较有用的屏幕保护程序脚本,这个脚本可以确保屏幕保护程序受到密码保护:
HKEY_CURRENT_USER=&H80000001
strComputer="."
SetobjReg=GetObject("winmgmts:\\"&strComputer&"\root\default:StdRegProv")
strKeyPath="ControlPanel\Desktop"
objReg.CreateKeyHKEY_CURRENT_USER,strKeyPath
ValueName="ScreenSaverIsSecure"
strValue="1"
objReg.SetStringValueHKEY_CURRENT_USER,strKeyPath,ValueName,strValue
你看,注册表脚本编写多么有趣?!Tweakomatic还有其他脚本可以用来管理屏幕保护程序、开始菜单、任务栏、Windows资源管理器文件夹设置以及更多内容。如果您正在寻找管理常见桌面设置的方法,这是一个开始进行工作的好地方。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号