你可以下載「利用Visual Studio偵錯 asp.pdf」,裡頭有完整的截圖
這個方法在2003上可行,在2005上沒試過,2008上試不出來,如果有人知道如可在 Visual Studio 2008 上偵錯 ASP 系統,請告訴我! 設定完成後,即可對 ASP 網頁進行偵錯。
一、先確認 Localhost上的 IIS 已安裝 FrontPage Server Extensions,而且虛擬目錄上也完成「設定伺服器擴充程式」
二、在虛擬目錄內容的設定→偵錯→啟用ASP伺服器端指令碼偵錯。
三、在目錄安全規定頁籤中,啟用「整合式Windows驗證」
四、在「ASP.NET」頁籤中,修改 ASP.NET版本為 1.1.x ,目前測試只有在1.x版本才能進行 ASP 偵錯,2.x 會有權限問題。
五、虛擬目錄的實體權限中,必須賦予 VS Developesr 及 IWAM_host 有讀寫的權限,而且你登入本機的帳號要在 VS Developesr 群組內。
六、由 Visula Studio 中新增「ASP.NET Web應用程式」專案(如果 ASP 目錄已設為專案,則略過此步驟),專案名稱就是 IIS 上的虛擬目錄名稱。
六a.新增 ASP.NET Web應用程式後,會自動新增幾個檔案(WebForm1.aspx, Global.asax ..),除Web.Config 外,餘可刪除。
七、完成新增專案後,要將現有的 ASP 網頁加到專案中,先在方案總管中「顯示所有檔案」,接著利用滑鼠右鍵,在非專案內容的項目上選擇「加入至專案」
八、在專案名稱上按右鍵,設定專案屬性中的「偵錯」組態,須將「ASP 偵錯」打勾,但 「ASP.NET 偵錯」不可打勾。
九、Web.Config 中的 <customErrors mode="RemoteOnly" /> 請改成 "Off"
十、完成步驟三、及步驟四、後,即可「重建專案」,若有錯誤,請先更正,如果沒有錯誤即可進行所有偵錯作業。每次重新啟動 Visual Studio 2003 並載入專案,第一次偵錯時,皆會要求帳號及密碼,請輸入你登入本機的帳號及密碼(帳號須加到 VS Developers群組中),你可以試看看別的帳號可否有權進行偵錯!
十、如果要對網頁上的 JavaScript 進行偵測,則必須先將 Localhost 加到信任網站,並且取消「停用指令碼除錯(Internet Explorer)」選項。
十一、 單單完成設定,遇到 JavaScript 的中斷點依舊不會停駐,請手動在網頁的 中加入 onLoad="bugger;" 以喚醒 Script 的偵錯器。
後記:
一、上面的方法是在 localhost 上的IIS,如果要偵錯遠端機器,需在遠端機器上安裝 MsVsMon.exe、開啟 RPC 服務,且虛擬目錄的對應實體目錄要賦予 Debugger 讀寫權限,但這個方法沒試過。
二、在網路上有找到 IE 上的 JavaScript 的偵錯工具—IE Developer ToolBar ,但因利用Visual Studio 就可以偵錯,所以沒有再試( FireFox 上也有 Web Developer 對應)
三、如果程式碼中有利用到 Server.CreateObject(" ") 來建立物件,請在 Web.config中的
四、如果發生「伺服器物件…Server.CreateObject 失敗」,請先查閱「元件服務」中指定的物件是否存在(已註冊),若無,請先註冊 (regsvr32.exe)
五、如果在啟動偵錯時,出現「請確認您屬於目前嘗試要進行偵錯的電腦中的系統管理員或'Debugger Users'群組的成員。
請檢查IE中「網際網路選項」à「安全性設定」à「自訂層級」中之「使用者驗證」à「使用目前的使用者名稱及密碼來自動登入」是否已被選取(需被選取),如果未選取,請選取後,關閉所有IE,再重新執行偵錯!
沒有留言:
張貼留言