| 网站首页 | 新闻中心 | 系统安全 | 网络安全 | 安全技术 | 下载中心 | 
课件制作网.
收藏本站
设为首页
安全365
如何使用脚本锁定任务栏?
如何使用脚本锁定任务栏?
作者:佚名 文章来源:不详 点击数: 更新时间:2007-1-24 11:13:45
问:

您好,脚本专家!如何使用脚本锁定任务栏?

-- RK

答:

您好,RK。Windows 95 发布时,有位脚本专家当时正在华盛顿大学担任计算机支持人员。对于那段日子,这位脚本专家对两件事情还记忆犹新。第一件事情是,他记得必须在好几百台计算机上同时安装 Windows 95 和 Microsoft Office,这在那时意味着要用 9 到 10 张软盘来安装 Windows,再另外用 14 到 15 张软盘来安装 Office。(用 CD 驱动器?网络连接?这在计算的黑暗时代还未正式登上舞台,对于学术界的人来说更是如此。)

不出所料,这位脚本专家用了两三个月的时间才将 Windows 和 Office 安装到所有部门的计算机上。这第一件事引出了他在 Windows 95 时期所经历的第二件事:在接下来的几个月里,他一直往返于各个办公室之间,帮助人们重新对齐、重新调整和锁定其任务栏。在过去那段日子,默认情况下任务栏是不锁定的,因此在华盛顿大学的计算机上,任务栏的最终位置是任意的,即有可能落在屏幕的右侧、左侧或顶部。人们在重新调整任务栏大小时,不是将其调整得过大以至占满了半个屏幕,就是将其调整得过小以至他们甚至都未意识到自己还一个任务栏。在两个月的时间里(尽管好像是用了两年),这位脚本专家的主要任务就是重新配置任务栏并将其锁定。他日复一日地都在重复着这个工作。

而且几乎就在同时,他开始思考除了做一名计算机技术支持人员,他在自己的人生里是否还可以做些别的事情。

我们可怜的脚本专家;要是他能有以下这种脚本可供使用就好了:

HKEY_CURRENT_USER = &H80000001



strComputer = "."

Set objReg = GetObject("winmgmts://" & strComputer & "/root/default:StdRegProv")



strKeyPath = "Software/Microsoft/Windows/CurrentVersion/Explorer/Advanced"

ValueName = "TaskBarSizeMove"

dwValue = 0



objReg.SetDWORDValue HKEY_CURRENT_USER, strKeyPath, ValueName, dwValue

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

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

strComputer = "."

Set objReg = GetObject("winmgmts://" & strComputer & "/root/default:StdRegProv")

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

strComputer = "atl-ws-01"

Set objReg = 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.SetDWORDValue HKEY_CURRENT_USER, strKeyPath, ValueName, dwValue

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

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

好主意:并不是这位脚本专家。但也许其他人已经可以提出一些建议了。

【转自世纪安全网 http://www.21safe.com】
文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
     
     
     
    CSO们如何应对新技术的安
    普通企业如何应对黑客攻
    企业该如何防范由VoIP引
    浅谈IT如何实现企业的应
    黑客与正规企业是如何串
    如何无限制申请Gmail 2.
    企业如何避免人为因素的
    社会工程学:如何利用黑客
    使用计算机应注意的道德
    免安装使用最新版 IE7 B

    Copyright © 2006-2008 www.anquan365.com 安全365
    建议使用1024*768分辨率及第三方浏览器对本站进行浏览