用vbs实现配置无人登录计算机时使用的屏幕保护程序

问:
您好,脚本专家!我最近下载了你们的“脚本中心”屏幕保护程序,当有人登录计算机时,它运行起来棒极了。但是无人登录时,计算机却使用其它屏幕保护程序。如何让计算机在无人登录时也使用“脚本中心”屏幕保护程序?
-- RF
答:
您好,RF。您知道,我们遇到过这种情况,您可能在设法欺骗这些老脚本专家们。举个例子来说,我们怎么知道您希望无人登录计算机时运行的屏幕保护程序就是我们的屏幕保护程序?也许您只是奉承脚本专家,好让脚本专家回答您的问题。回答完问题后,您就会把我们甩掉,安装其它一些与脚本编写有关的屏幕保护程序作为默认屏幕保护程序。RF 啊 RF:您真的认为脚本专家头脑如此简单愿意受用这样的假意恭维吗?
嗯,您是该这样认为,因为我们确实如此:


代码如下:

Const HKEY_USERS = &H80000003 
strComputer = "." 
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") 
strKeyPath = ".Default\Control Panel\Desktop" 
ValueName = "SCRNSAVE.EXE" 
strValue = "C:\WINDOWS\System32\Script Center.scr" 
objReg.SetStringValue HKEY_USERS, strKeyPath, ValueName, strValue

正如您所看到的,这是一个用于更改注册表的 WMI 脚本。它与我们过去为您展示的许多其它注册表修改脚本非常相似,但有一处特殊更改。在以前的脚本中,我们总是先定义一个常量,告诉脚本我们要处理 HKEY_CURRENT_USER 或 HKEY_LOCAL_MACHINE 注册表配置单元。这样做有充分的理由:我们希望将所做的一切更改都应用于当前用户或计算机本身。不过,请注意此脚本的第一行:
Const HKEY_USERS = &H80000003
秘密就在这里:这一次我们要处理 HKEY_USERS 注册表配置单元。除了其它用途外,HKEY_USERS 配置单元为您提供了这样一个场所:在其中配置的设置可应用于登录到计算机的任何用户,而不仅仅是某一特定的用户。换言之,如果您使用 HKEY_USERS 配置屏幕保护程序,该屏幕保护程序便是默认屏幕保护程序,会应用于登录到计算机的任何新用户。(除非用户明确配置其它屏幕保护程序,否则会继续应用默认屏幕保护程序。)同样,无人登录计算机时,也会使用此默认屏幕保护程序。
酷吧?顺便提一下,您还可以使用该注册表配置单元配置显示在登录屏幕上的墙纸;只需将注册表值 HKEY_USERS\.Default\Control Panel\Desktop\Wallpaper 设置为相应的文件路径即可。类似下面的代码:


代码如下:

Const HKEY_USERS = &H80000003 
strComputer = "." 
Set objReg = GetObject("winmgmts:\\" & strComputer & "\root\default:StdRegProv") 
strKeyPath = ".Default\Control Panel\Desktop" 
ValueName = "Wallpaper" 
strValue = "C:\WINDOWS\System32\Script Center.bmp" 
objReg.SetStringValue HKEY_USERS, strKeyPath, ValueName, strValue

定义常量后,接下来要连接本地计算机上的 WMI 服务(虽然此脚本在远程计算机上的运行效果同样不错)。然后,为下面三个不同的变量赋值:
• strKeyPath - HKEY_USERS 内注册表项的路径。在本例中,路径为 .Default\Control Panel\Desktop。
• ValueName - 要更改的注册表值的名称 (SCRNSAVE.EXE)。
• strValue - 要赋给 SCRNSAVE.EXE 的新值。在此脚本中,该值是此屏幕保护程序的完整路径。
最后,我们要调用 SetStringValue 方法(将常量 HKEY_USERS 和这三个变量一起作为参数传递),这样就大功告成了:
objReg.SetStringValue HKEY_USERS, strKeyPath, ValueName, strValue
现在,如果您注销后再等几分钟,就会运行“脚本中心”屏幕保护程序。(假设注册表值 ScreenSaveActive 设置为 1;如果设置为 0,则表示禁用该屏幕保护程序。)
知道这有多简单了吧?噢,不,我们不是说脚本(虽然脚本也非常简单);我们是说要获得问题的答案有多简单,当然,您提问题的措辞很对路。就象常说的那句话,谁都爱听恭维话。

(0)

相关推荐

  • 用vbs实现配置无人登录计算机时使用的屏幕保护程序

    问: 您好,脚本专家!我最近下载了你们的"脚本中心"屏幕保护程序,当有人登录计算机时,它运行起来棒极了.但是无人登录时,计算机却使用其它屏幕保护程序.如何让计算机在无人登录时也使用"脚本中心"屏幕保护程序? -- RF 答: 您好,RF.您知道,我们遇到过这种情况,您可能在设法欺骗这些老脚本专家们.举个例子来说,我们怎么知道您希望无人登录计算机时运行的屏幕保护程序就是我们的屏幕保护程序?也许您只是奉承脚本专家,好让脚本专家回答您的问题.回答完问题后,您就会把我们甩掉

  • 用vbs记录屏幕保护程序的开始时间和结束时间

    问: 您好,脚本专家!如何记录屏幕保护程序的开始时间和结束时间? -- JS 答: 您好,JS.您知道,一位脚本专家(嘿,谁说"肯定是 Greg"?)年纪大得记得屏幕保护程序刚出现的日子.那时,这类脚本毫无意义.毕竟,屏幕保护程序启动后,每个人都神魂颠倒,从未想过让它结束.事实上,作为计算机支持人员的这位脚本专家首先必须做的一件事就是在每个人的桌面上创建快捷方式,使他们能够随时启动"飞转的小烤炉". 那时人们很容易得到快乐. 啊,但是活在过去没有意义,对吧?在今天的

  • Iiscnfg.vbs IIS 配置脚本

    导入和导出本地或远程计算机上 Internet 信息服务 (IIS) 配置数据库的所有或选定元素,或者将整个 IIS 配置(配置数据库和架构)复制到另一台计算机以复制配置.Iiscnfg 执行下列功能: 若要查看该命令语法,请单击以下命令: iiscnfg /export 以加密或未加密格式将所有或部分 IIS 配置数据库复制到 XML 文件.然后可在导入操作中使用 XML 文件来将所有或部分配置数据库复制到其他 IIS 配置. 语法 iiscnfg[.vbs] /export /f [Path

  • Ubuntu下MySQL安装及配置远程登录教程

    本文实例为大家分享了MySQL安装及配置远程登录教程,供大家参考,具体内容如下 一.安装MySQL 一.安装MySQL 1. sudo apt-get install mysql-server 2. sudo apt-get install mysql-client 3. sudo apt-get install libmysqlclient-dev 注意:安装过程中会提示设置密码和确认密码.记住密码. 安装完成之后可以使用如下命令来检查是否安装成功: root@root:/# ps aux|g

  • Chkntfs 显示或指定在启动计算机时计划的自动系统检查是否在 FAT、FAT32 或者 NTFS 卷上运行。

    Chkntfs 显示或指定在启动计算机时计划的自动系统检查是否在 FAT.FAT32 或者 NTFS 卷上运行. 语法 chkntfs volume: [...] chkntfs [/d] chkntfs [/t[:time]] chkntfs [/x volume: [...]] chkntfs [/c volume: [...]] 参数 volume: [...]  必需指定驱动器号(冒号分隔).装入点或卷名.显示识别指定卷的文件系统的信息.如果已计划运行自动文件检查,则该参数会显示表明卷是

  • CentOS 配置无密码登录的实现

    CentOS 配置无密码登录 配置sshd服务 在服务器上修改/etc/ssh/sshd_config: <!-- lang: shell --> #禁止root登录 PermitRootLogin no #指定可以登录的用户 AllowUsers bob alice StrictModes yes #关闭密码验证 PasswordAuthentication no #打开RSA验证相关设置 RSAAuthentication yes PubkeyAuthentication yes Auth

  • git bash配置ssh 登录 Linux的方法

    1.首先在 Linux 服务器上生成公钥和私钥文件,默认的存放目录在~/.ssh下. ssh-keygen 可以将密码留空,这样之后就可以免密码登录. 2.将私钥文件拷贝到本机. scp root@192.168.1.168:/root/.ssh/id_rsa ~/.ssh 这里最好将私钥文件放在 ~/.ssh 目录下,不然在使用 ssh 登录时,需要使用 -i 来指定私钥文件. 3.公钥文件需要添加到服务器的 ~/.ssh/authorized_keys 文件当中. cat id_rsa.pu

  • Springboot配置Swagger2登录密码的实现

    目录 Swagger 一.配置Swagger 二.配置Swagger登录密码 Swagger Swagger是使用OpenAPI规范(OAS)开发API的最广泛使用的工具生态系统.Swagger由开源和专业工具组成,满足几乎所有的需求和用例. 一.配置Swagger 添加依赖 // web依赖 <dependency>         <groupId>org.springframework.boot</groupId>         <artifactId&g

  • VBS一键配置VOIP脚本代码

    代码比较长,对vbs感兴趣的朋友可以参考一下 Dim ws,fso,IE Set IE = WScript.createobject("InternetExplorer.Application") Set ws = WScript.CreateObject ("WSCript.shell") Set fso=CreateObject("scripting.filesystemobject") Const reboot="/content

  • 详解Spring Security如何配置JSON登录

    spring security用了也有一段时间了,弄过异步和多数据源登录,也看过一点源码,最近弄rest,然后顺便搭oauth2,前端用json来登录,没想到spring security默认居然不能获取request中的json数据,谷歌一波后只在stackoverflow找到一个回答比较靠谱,还是得要重写filter,于是在这里填一波坑. 准备工作 基本的spring security配置就不说了,网上一堆例子,只要弄到普通的表单登录和自定义UserDetailsService就可以.因为需

随机推荐