文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

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

2023-06-08 13:29

关注

本篇内容主要讲解“怎么用vbscript实现修改屏幕保护的等待时间长度”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用vbscript实现修改屏幕保护的等待时间长度”吧!

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

到此,相信大家对“怎么用vbscript实现修改屏幕保护的等待时间长度”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯