• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
BeyondTechnology
博客园    首页    新随笔    联系   管理    订阅  订阅

JavaScript/VBScript脚本程序调试(Wscript篇)

在实际工作中,我发现程序员对脚本抱怨最多的就是脚本程序很难调试这个缺点,特别是调试.vbs等WSH程序的时候,总是: 

 

1. 在资源管理器里面双击一个.vbs文件。

 

2. 程序里面发生了一个错误,例如异常,或者编程逻辑错误。

 

3. 一行行阅读源文件,然后在估计发生错误的地方,添加很多的Msgbox.Show,打印一些变量的值。

 

4. 重新执行.vbs文件

 

5. “当当当”,一系列的 “确定”点完了以后,人也晕了,重新回到第三步继续……

 

其实我们也是可以用Visual Studio调试这类WSH程序的,关键就在.vbs等WSH脚本程序的解释器wscript.exe和cscript.exe提供了调试支持:

 

1. 当我们在资源管理器里面双击一个.vbs文件时,资源管理器实际上是运行wscript.exe来解释和执行这个.vbs文件的。

 

2. Wscript.exe和cscript.exe都支持这两个选项 /D – 启用调试功能,/X – 在调试器里面执行脚本程序。

 

这样,我们可以使用两种方法在Visual Studio里面调试脚本程序,这里我只介绍第二种方法 -- 第一种方法不知道为什么我的Win 7 + Visual Studio 2008不能工作,:(。

 

例如下面的.vbs代码,将它保存到c:"test.vbs,我们要调试这个程序,源文件如下:

 

复制代码 代码如下:

 

Set obj = CreateObject("System.Collections.ArrayList")

 

obj.Add("this is a test")

 

obj.Add(1)

 

obj.Add(obj)

 

Msgbox obj(0)

 

Msgbox obj(1)

 

Msgbox obj(2).ToString()

 

 

 

1. 打开命令行,更换目录到C:盘,执行下面这个命令:

 

Wscript.exe /X test.vbs

 

2. 这个时候,应该会弹出一个Visual Studio对话框,提示你选择合适的调试器,直接点击上面的确定按钮就好了。

 

3. 最后,你就可以跟调试C#或者C++程序一样,在 Visual Studio里面设置断点,查看变量的值了

 

本机Win7 + Visual Studio2008环境下/D进不了Debug模式,使用/X则可调试

通过Wscript启动调试器MsgBox已MessageBox形式输出,而Cscript启动调试器MsgBox则将内容输出到控制台

posted @ 2011-01-10 23:32  BeyondTechnology  阅读(4400)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3