用vbs将输出内容写到屏幕以覆盖当前屏幕上的内容的方法
作者 佚名
来源 ASP编程
浏览
发布时间 2013-07-09
问: 您好,脚本专家!如何将输出内容写到屏幕以覆盖当前屏幕上的内容? --KM 答: 您好,KM。如果您确实需要将输出内容写到命令窗口,那么,我们没办法给您提供答案:尽管我们多少已经处理过一些问题,但我们从未找到一种简单、直接的方法可覆盖命令窗口中的信息。 不过,如果您要将信息输出到InternetExplorer窗口,那么我们还确实有解决办法。而且马上就可以给出答案: SetobjExplorer=CreateObject("InternetExplorer.Application") objExplorer.Navigate"about:blank" objExplorer.ToolBar=0 objExplorer.StatusBar=0 objExplorer.Width=400 objExplorer.Height=200 objExplorer.Left=0 objExplorer.Top=0 DoWhile(objExplorer.Busy) Wscript.Sleep200 Loop objExplorer.Document.Title="ProcessInformation" objExplorer.Visible=1 objExplorer.Document.Body.InnerHTML="Retrievingprocessinformation." Wscript.Sleep2000 strComputer="." SetobjWMIService=GetObject("winmgmts:\\"&strComputer&"\root\cimv2") SetcolItems=objWMIService.ExecQuery("Select*fromWin32_Process") ForEachobjItemincolItems objExplorer.Document.Body.InnerHTML=objItem.Name Wscript.Sleep500 Next objExplorer.Document.Body.InnerHTML="Processinformationretrieved." Wscript.Sleep3000 objExplorer.Quit 看上去确实有点长,但其实非常简单,这一点您很快就会发现。例如,乍一看,这段代码可能挺恐怖: SetobjExplorer=CreateObject("InternetExplorer.Application") objExplorer.Navigate"about:blank" objExplorer.ToolBar=0 objExplorer.StatusBar=0 objExplorer.Width=400 objExplorer.Height=200 objExplorer.Left=0 objExplorer.Top=0 不过,事实证明,我们所做的只是创建一个InternetExplorer的空实例;而且,这是通过前两行代码完成的。其余代码行只是配置InternetExplorer窗口的各种属性而已:我们设置宽度为400像素,隐藏工具栏,然后将InternetExplorer窗口定位在屏幕的左上角。如果愿意使用InternetExplorer窗口的默认配置,则可跳过3到8行。 设置完InternetExplorer窗口之后,我们使用下面的DoWhile循环,在完全载入InternetExplorer后中止该脚本: DoWhile(objExplorer.Busy) Wscript.Sleep200 Loop 看到了吗?还算不错。启动并运行InternetExplorer后,接下来为InternetExplorer窗口指定一个标题,并将Visible属性设置为True(1)。我们这么做的原因是,迄今为止,InternetExplorer还在隐藏窗口中运行,在屏幕上看不到。不过下面的代码可解决这个小问题: objExplorer.Document.Title="ProcessInformation" objExplorer.Visible=1 现在我们准备在窗口中写点什么。对于此示例脚本,就像下面的代码那样简单: objExplorer.Document.Body.InnerHTML="Retrievingprocessinformation." 正如您所看到的那样,我们只是赋给Document.Body对象的InnerHTML属性一个值。这种情况下,我们仅为InnerHTML赋予一些文本:检索进程信息。不过,我们可以很容易地添加一些HTML标记并创建更为独特的输出。例如,此行代码会将写到窗口中的文本加粗: objExplorer.Document.Body.InnerHTML="<B>Retrievingprocessinformation.</B>" 好吧,或许这与设想并不完全相符。但您已经得到问题的答案了。 在InternetExplorer窗口中显示我们的文本字符串之后,我们便可将该脚本中止2秒(2000毫秒)。没有什么原因必须要这样做,只是这样您就能在覆盖原来的文本之前看到它们。 接下来是下面这段代码: strComputer="." SetobjWMIService |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于用vbs将输出内容写到屏幕以覆盖当前屏幕上的内容的方法的所有评论