易截截图软件、单文件、免安装、纯绿色、仅160KB

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

在日常的操作系统维护过程中,有时我们也会写一些小的脚本程序来简化系统管理工作,例如调用一些WMI函数来自动安装卸载程序之类的。
在实际工作中,我发现程序员对脚本抱怨最多的就是脚本程序很难调试这个缺点,特别是调试.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里面设置断点,查看变量的值了,如下图所示:
  


相关文档:

VB备份ACCESS数据库的方法,代码

VB备份ACCESS数据库的方法,代码
这个代码其实也适用于其它类型文件的复制,要修改一下其中的语句哦~Private Sub bak_Click()
Dim TargetFileName As String '目标文件名
On Error Resume Next
With cdlog1
.DialogTitle = "数据备份"
.InitDir = App.Path
.FileName = "backup.mdb"
.Filter = ......

VB中根据文本行数显示滚动条(动态显示滚动条)的方法

很多时候,我们不想一开始就显示滚动条,当文本到达指定行数文本框无法完全显示的时候再显示它,由于Scrollbar属性是只读的,无法在运行时的代码中改变这个属性,只能使用下面的API实现这个功能:
Public Declare Function ShowScrollBar Lib "user32" (ByVal hwnd As Long, ByVal wBar As Long, ByVal bShow As Long) As Long
......

vb操作sql数据库的典型例子

本程序有一菜单开始,里面有查询,删除,修改,添加,程序不一一列出,只写出基本的过程,连接数据库采用标准模块:
'Public publicstr As String
Public conn As ADODB.Connection
Public rs As ADODB.Recordset
Public Sub main()     '数据库连接共享函数
  Set conn = New ADODB.Connect ......

VB中回调函数的一个问题

之前碰到一个问题,VB中向一个C++写的DLL中注册一个Callback,C++在调用这个Callback时有些问题,具体问题描述和下面这个帖子中的情况是一样的: http://topic.csdn.net/t/20051104/09/4370840.html
经过尝试以后发现,在VB中写的回调函数必须是用Function关键字,并且,必须要设置返回值,如下:
Public Function Callbac ......

在VB6中用CopyMemory拷贝字符串的种种猫腻(一)

本文来自此帖的冗长讨论,感谢Tiger_Zhao的全程指点和陈辉、阿勇、马云剑等很多朋友的热心参与。本文其他部分在:(二)、(三)、(四)。
 
话说VB6是个很认真细致的妈妈,它会悄没声地帮你做很多事。今天我们来说的是VB6在API调用时自动对字符串参数进行转换的“好人好事”。 
第一节 体贴的VB妈 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号