JavaScript/VBScript脚本程序调试(Wscript篇)
来源:互联网 发布:电脑画设计图软件 编辑:程序博客网 时间:2024/05/22 16:06
在实际工作中,我发现程序员对脚本抱怨最多的就是脚本程序很难调试这个缺点,特别是调试.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则将内容输出到控制台
- JavaScript/VBScript脚本程序调试(Wscript篇)
- JavaScript/VBScript脚本程序调试(Wscript篇)
- 调试JavaScript/VB Script脚本程序(Wscript篇)
- 调试JavaScript脚本程序(Firefox篇)
- 调试JavaScript/VB Script脚本程序(IE篇)
- 调试JavaScript/VB Script脚本程序(ASP篇)
- WScript对象的VBS,VBScript,Javascript,ASP例程
- 调试JavaScript/VbScript
- 一个MFC调用脚本的类(javascript ,vbscript)
- VBScript脚本运用(脚本程序与宿主程序的交互)
- VBScript脚本运用(脚本程序与宿主程序的交互)
- VBScript脚本运用(脚本程序与宿主程序的交互)
- vbscript和javascript 调用windows 程序
- javascript Wscript.Shell
- vbs脚本文件执行 (关键字 wscript vbs)
- vbs脚本文件执行 (关键字:vbs,wscript) (2)
- VBScript 调试
- javascript脚本调试:
- 菜鸟心中理解的大数据
- format not a string literal and no format arguments [-Werror=format-security]
- setTextFormat和defaultTextFormat的用法
- 数据结构与算法分析——最大公约数
- pdf如何转换成html格式方法介绍
- JavaScript/VBScript脚本程序调试(Wscript篇)
- iOS基础知识点
- Swift修改navigation bar背景颜色、标题及其颜色
- 对于虚拟机的使用
- Windows多线程
- error LNK2001: unresolved external symbol _GetFileVersionInfoA@16解决办法
- Android学习笔记:超能RecyclerView组件使用(中)---秒变
- android基于开源网络框架asychhttpclient,二次封装为通用网络请求组件
- 关于extern C的看法