2012-02-16 58 views
5

我有一個通常由cscript.exe執行的.js文件(即未在瀏覽器中運行並且無法在那裏運行)。在Visual Studio(或其他JS調試器)中調試Javascript

我知道,我可以喂cscript.exe//X參數,以便得到一個調試器要求選擇。好。沒關係。

我選擇「Visual Studio 2005調試器」,IDE出現,執行停止在第一行。精細。

腳本終止(或我終止它),我編輯的東西,並希望再次調試。

簡單的想法就是打到F5並再次運行調試器。但這不起作用。 VS只是告訴我它找不到任何調試符號cscript.exescreenshot

現在是什麼?對於每次調試運行,再次從命令行開始cscript.exe在我看來是相當麻煩的。

有沒有辦法簡單地用VS調試腳本?另外提示其他調試工具,將不勝感激。


編輯:
的的t0nyh0answer是八九不離十。我創建了一個虛擬控制檯應用程序,編譯並調試器出現。然而,兩件事情是不完美的

  1. cscript.exe總是要調試器使用(VS的哪個實例)。
    這可以通過直接在命令行中指定某個調試器實例來克服嗎?

  2. 爲了激發後期構建事件,必須在源代碼中進行一些修改。目前,我只是添加/刪除一個空白行來觸發構建我的虛擬項目。
    即使沒有任何變化,是否有辦法始終執行構建後腳本?

+0

對於Visual Studio中的「生成事件」選項卡上的「2.」,在運行「生成後」事件時有不同的選項。至少在VS 2010中,您的選項是「始終」,「成功構建」和「構建更新項目輸出時」。不知道2005年是否一樣。 – BryanJ 2012-03-16 11:31:21

回答

2

有可能不是將調試器附加到cscript.exe本身的一種方式,但你可以創建一個運行執行的cscript.exe //x myScript.js命令批處理文件生成後事件,這樣每次構建的時候,它會自動執行。

對生成後事件的更多信息,請參見本:http://msdn.microsoft.com/en-us/library/ke5z92ks(v=vs.80).aspx

+0

+1這非常接近!查看更新的問題。 – eckes 2012-03-14 07:07:36

2

雖然不是一個調試器工具,你應該考慮使用JavaScript測試框架的Visual Studio,如Chutzpah,這將最有可能讓你的生活很容易。

除了標準的瀏覽器調試工具(Firebug或Chrome Inspector)之外,我發現這些都是我通常需要構建乾淨,經過測試的,大部分無bug的JavaScript代碼。

1

我手邊沒有cscript,但我想你可以嘗試手動將VS附加到進程。

使用cscript.exe //x myScript.js啓動您的js後,單擊「調試 - 附加到進程」,找到您的cscript.exe進程並附加到它。

我忘了如果VS2005有這個功能,但VS2008和VS2010做。

這是VS用來調試(附加到正在運行的進程)的本地調試操作。如果這不起作用,我不認爲你可以使用Visual Studio做到這一點。