快速业务通道

用vbs将输出内容写到屏幕以覆盖当前屏幕上的内容的方法

作者 佚名 来源 ASP编程 浏览 发布时间 2013-07-09
=GetObject("winmgmts:\\"&strComputer&"\root\cimv2")
SetcolItems=objWMIService.ExecQuery("Select*fromWin32_Process")
ForEachobjItemincolItems
objExplorer.Document.Body.InnerHTML=objItem.Name
Wscript.Sleep500
Next
我们只需检索本地计算机上运行的进程集合。这并不十分重要;我们只是需要通过运行该脚本而得到一些有趣的结果。我们今天所关心的是在我们建立的用来遍历该集合中所有项的ForEach循环内将会发生什么:
ForEachobjItemincolItems
objExplorer.Document.Body.InnerHTML=objItem.Name
Wscript.Sleep500
Next
在多数WMI脚本中,我们在ForEach循环内回显属性值(例如,Name)。不过在此,我们不使用Wscript.Echo,而是将集合中第一个进程的名称分配给脚本主体的InnerHTML属性:
objExplorer.Document.Body.InnerHTML=objItem.Name
这样做会有什么结果呢?将使用集合中第一个进程的名称覆盖InternetExplorer窗口的现有内容。例如,我们要开始循环时,InternetExplorer窗口中将含有以下文本:
检索进程信息。
当我们启动循环后,这段文本将被替换为集合中第一个进程的名称。例如:
Winword.exe。
覆盖窗口中的内容后,我们将脚本中止半秒(500毫秒)。再次强调一下,这并不是必须要做的事情;我们这样做只是为了减缓脚本速度,以便您能看到显示的第一个进程的名称。半秒后,进入下一个循环并检索关于集合中第二个进程的信息。之后,该脚本将用第二个进程的名称替换InternetExplorer窗口中的现有内容(从技术角度上讲,是赋给InnerHTML属性的值),然后以此类推。
在遍历整个集合后,我们指示该脚本已结束,中止3秒,然后关闭InternetExplorer窗口:
objExplorer.Document.Body.InnerHTML="Processinformationretrieved."
Wscript.Sleep3000
objExplorer.Quit
运行效果很不错,而且非常简单。因为它使用HTML,这意味着您尽可以使输出如您所愿;事实上,您甚至可以使InternetExplorer窗口的外观像命令窗口一样。如果这还不够酷,那,我们也不知道怎样才算酷了。(事实上,正如一个脚本专家儿子经常提醒他的脚本专家父亲的那样,我们不知道什么是酷。)

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