Your Ad Here
首页 | 编程语言 | 网站建设 | 游戏天堂 | 冲浪宝典 | 网络安全 | 操作系统 | 软件时空 | 硬件指南 | 病毒相关 | IT 认证
软讯网络 > 网站建设 > ASP.NET > [UMU WSH 教程](5)脚本超时
【标  题】:[UMU WSH 教程](5)脚本超时
【关键字】:UMU,WSH
【来  源】:http://blog.csdn.net/UMU/archive/2007/04/11/1561126.aspx

[UMU WSH 教程](5)脚本超时

Your Ad Here

学习 WSH 的理由

[UMU WSH 教程](1) Hello WSH

[UMU WSH 教程](2)输入

[UMU WSH 教程](3)与 C 语言不一样的语法

[UMU WSH 教程](4)WSH 相关文件

  前面一篇《[UMU WSH 教程](4)WSH 相关文件》有提到脚本超时问题,现在细说一下。

  首先,写一个 Timeout.VBS,代码如下:

MsgBox WScript.Timeout

  然后在“属性-脚本”页给它设置超时为 1 秒,这时会在同目录下生成 Timeout.WSH,现在我们分别运行 Timeout.VBS 和 Timeout.WSH,发现结果不一样,Timeout.VBS 显示 0,Timeout.WSH 显示 1。

  接着测试,运行一下 wscript.exe,出现“Windows 脚本宿主设置”对话框,把超时设置为 2 秒,然后再分别运行 Timeout.VBS 和 Timeout.WSH,结果 Timeout.VBS 显示 2,Timeout.WSH 还是显示 1。

  结论就是单独的设置超时优先于全局的设置。

  UMU 为什么要说这个超时问题呢?原因是超时有时候好,有时候坏,我们应该了解它。比如说有人民群众想用 WSH 来写病毒,但用户把脚本超时打开,并设置为 1 秒,结果这病毒刚刚初始化完毕就被关掉了,这位人民群众一定很痛恨“超时”!聪明的病毒会在启动的时候检查一下全局超时设置,如果超时是打开的,就把它关闭,这样病毒就可以安然运行了。

  Wscript.exe 把设置保存在注册表 HKEY_CURRENT_USER\Software\Microsoft\Windows Script Host\Settings 下,Timeout 为 0 表示不使用超时。

  当然了,UMU 绝对不是教人写病毒,把这原理说清楚就是为了告诉广大人民群众怎么防止病毒修改这个超时设置。病毒会使用 WScript.Shell 来读取和修改注册表值,但 WScript.Shell 没办法改写注册表键的权限,所以我们可以把上面说的这个键设为只读。很可惜这招无法防止天下无敌 WMI,这个……以后再说,哼哼!

  除了全局设置和 .WSH 设置,还可以用宿主的参数来设定超时,运行一下 wscript //? 就可以看到有一个参数是“//T:nn 超时设定秒:允许脚本运行的最长时间”。但是这样要每次去敲命令行,太累了,可以把 //T:nn 写到注册表里,比如想单独设置 .VBS 脚本程序的超时,不影响其他文件,那么可以改注册表 HKEY_CLASSES_ROOT\VBSFile\Shell\Open\Command 下的默认键,原来是 %SystemRoot%\System32\WScript.exe "%1" %*,在后面增加 //T 参数,比如改为 %SystemRoot%\System32\WScript.exe "%1" %* //T:1,这样就单独给 .VBS 脚本程序设置了超时为 1 秒。

  看来写病毒还是挺累的,就为了一个超时,它要检查它目录下有没有自己的配制文件,有的话删除,然后再检查 HKEY_CURRENT_USER\Software\Microsoft\Windows Script Host\Settings 下的 Timeout 值,接着还要用 WScript.Arguments 检查它的参数里有没有 //T:nn。累,实在累,所以人民群众没事还是别写病毒了!维护网络和平的任务就交给您了!

[UMU WSH 教程](11)常见对象 - FSO:【上一篇】
[UMU WSH 教程](4)WSH 相关文件:【下一篇】
【相关文章】
  • [UMU WSH 教程](11)常见对象 - FSO
  • Design and implement an "Accumulator" class (complete)
  • 走近WSH[转载]
  • Accumulation Buffer(累积缓存)
  • 利用WSH修改注册表
  • ACCESS 中如何用 WSH 创建桌面快捷方式
  • 用iNowShare与朋友共同分享好“东东”
  • 利用WSH作定時工作排程(转自:LearnASP)
  • 在Windows桌面上使用WSH接收邮件(转)
  • 用 WSH 想ASP 一样 查询数据库
  • 【随机文章】
  • 汽配地理学
  • 校校通项目介绍
  • 求两张票的号码
  • 祝愿馒头哥哥早日康复!
  • 找不到tlbimp命令的解决方法
  • 认识系统端口 从容应对“冲击波”病毒
  • Win XP 键盘快捷键概述<转>
  • NetBeans5正式发布
  • 消息人士披露周韶宁离开Google内情
  • RedHat7 中文化实战
  • 【相关评论】
    没有相关评论
    【发表评论】
    姓名:
    邮件:
    随机码*
    评论*
          
    |  首 页  |  版权声明  |  联系我们   |  网站地图  |
    CopyRight © 2004-2007 bbb软讯网络 All Rigths Reserved.