快速业务通道

如何使用脚本锁定任务栏?

作者 佚名 来源 ASP编程 浏览 发布时间 2013-07-09
复制代码 代码如下:

HKEY_CURRENT_USER=&H80000001

strComputer="."
SetobjReg=GetObject("winmgmts:\\"&strComputer&"\root\default:StdRegProv")

strKeyPath="Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"
ValueName="TaskBarSizeMove"
dwValue=0

objReg.SetDWORDValueHKEY_CURRENT_USER,strKeyPath,ValueName,dwValue

事实证明,通过切换注册表中的一个值就可以锁定或者解除锁定任务栏;更确切地说,就是通过切换注册表值Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\TaskBarSizeMove。将该值设置为0即可锁定任务栏;将其设置为1就可解除锁定任务栏。正如您可能预想的那样,要锁定任务栏,我们的脚本只需将TaskBarSizeMove的值设置为0就万事大吉了。

要实现该功能,该脚本首先要定义一个名为HKEY_CURRENT_USER的常量,并将其值设置为&H80000001;我们将使用这个常量来指示脚本要处理哪个注册表配置单元。(锁定和解除锁定任务栏均是针对单个用户完成的。)然后,我们利用以下两行代码连接到本地计算机上的WMI服务:

strComputer="."
SetobjReg=GetObject("winmgmts:\\"&strComputer&"\root\default:StdRegProv")

不过不用担心;您并不仅限于在本机上运行该脚本。而是很容易就可以对该脚本进行修改,以在远程计算机环境下运行。为此,只需将计算机的名称赋值给变量strComputer即可。例如,下面的代码会绑定到名为atl-ws-01的计算机上的WMI服务:

strComputer="atl-ws-01"
SetobjReg=GetObject("winmgmts:\\"&strComputer&"\root\default:StdRegProv")

这会比往返于各办公室并手动锁定300到400台计算机上的任务栏更轻松吗?我们不能确切地下这种结论,但它听起来的确要轻松些,不是吗?

在连接到WMI服务后,可将注册表路径(Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced)赋值给一个名为strKeyPath的变量。然后再将我们要更改的实际的注册表值(TaskBarSizeMove)赋值给一个名为ValueName的变量。最后,再将值0赋值给一个名为dwValue的变量。该变量代表了我们要赋值给TaskBarSizeMove的值。

注意:如果我们想解除锁定任务栏而不是想对其进行锁定怎么办?没问题;只需将值1赋值给dwValue即可。


现在我们所要做的就是调用SetDWORDValue方法,将常量HKEY_CURRENT_USER和变量strKeyPath、ValueName及dwValue作为参数传递:

objReg.SetDWORDValueHKEY_CURRENT_USER,strKeyPath,ValueName,dwValue

这样就大功告成了,但您可能必须先注销,然后再次登录,此更改才能真正生效。因此,您可能想要将该代码添加到注销脚本;这样当用户注销时,更改就会自动生效。用户下次登录时,任务栏将会被锁定。

我们的脚本专家是多么迫切地希望他在10年前就会编写出这样的脚本。当然,即使这样,他也仍必须将该脚本复制到一张软盘上,然后随身带着这张软盘往返于各办公室。此外,那时既没有WindowsScriptHost也没有WMI,因此运行该脚本还是有一些难度。但这些只是一些琐碎的事情,我们的脚本专家必然会找到一个避开这类小问题的方法。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号