網(LieHuo.Net)教程 在前面的文章《調試JavaScript/VB Script腳本程序(IE篇)》里面,介紹了如何在IE里面調試腳本程序。在日常的操作系統維護過程中,有時我們也會寫一些小的腳本程序來簡化系統管理工作,例如調用一些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() |
Wscript.exe /X test.vbs
2. 這個時候,應該會彈出一個Visual Studio對話框,提示你選擇合適的調試器,直接點擊上面的確定按鈕就好了。
3. 最后,你就可以跟調試C#或者C++程序一樣,在 Visual Studio里面設置斷點,查看變量的值了,如下圖所示: