ASP Error '0115'的一些解決辦法 - 中國WEB開發者網絡 (http://www.webasp.net) -- 技術教程 (http://www.webasp.net/article/) --- ASP Error '0115'的一些解決辦法 (http://www.webasp.net/article/1/101.htm) |
| -- 作者:未知 -- 發佈日期: 2003-04-09 |
| ASP Error '0115'的一些解決辦法
總的看法: ASP Error 0115意味著你的asp中的一個組件調用失敗,並且同時ASP 不能夠從這個失敗中獲取更多的錯誤信息了。 Error 'ASP 0115' Unexpected error /scripts/<filename> A trappable error occurred in an external object. The script cannot continue running. ASP Error '0115'對於ASP開發者來說是一個噩夢,這個錯誤意味著 ASP使用的一個組件已經Crash掉了。最致命的是你還不能夠得到更多的更詳細的出錯信息。 所以這有很多的可能會導致這個錯誤,從而也導致了有很多不同的解決辦法。 下面是幾個比較經典的解決方案: (一) (對於IIS 3/4來說): 服務端程序的安裝順序: 有的時候當你在服務端按照錯誤的順序安裝了新的軟件後,一些版本新的DLL被舊版本的給覆蓋了, 可氣的是,你通常都不被通知這些關鍵的動態連接庫被覆蓋了.在這些出錯中,你尤其應該注意的是當你 安裝了任何一個涉及到VB5的數據組件時(dll,ocx),ADO的DLL並沒有被VB5的安裝程序中帶的舊版本給覆蓋,. VB5的安裝程序而是將舊版本的dll安裝到windows\system 或則 winnt\system32目錄中,並且在這些目錄中註冊了 這些dll(它們將在你的註冊表中替換掉你的新版本dll在IIS中的的註冊默認目錄位置), 要解決由於VB5帶來的麻煩就是重新再註冊你原來的dll。 (二) 一個安裝服務端程序時的推薦順序: Windows NT 4.0 NT 4.0 Option Pack (IIS 4等) NT 4.0 SP4 SQL Server 7.0 MDAC 2.0 SP2 IE 5.0 (三) MDAC版本導致的錯誤: 安裝最新的MDAC版本能夠幫助你解決好多莫名其妙的ASP 0115錯誤。最新的版本可以去微軟的站點下載。 (四) 由於匿名帳號引起的安全問題: 匿名帳號的權限決定了你的ASP中需要訪問到的組件中某些函數的正確性. a) 如果沒有給用戶相應的訪問權限,ADO的DLL將抱錯:'0115' error. b) 確信你的匿名帳號能夠訪問如下目錄:System32目錄,InetPub目錄,你的RDBMS安裝的目錄以及ADO DLL所在的目錄 (五)提交Form時出現的錯誤 這個錯誤請參考MSDN中的文章id為Q173741 (六)糟糕的代碼習慣導致的錯誤: 有些時候'0115'是由於你糟糕的代碼導致的(不過也許同樣的代碼由於運氣不同,在不同的機器上不會發生錯誤) a) 當一個頁面提交一個Form給本身時,沒有給該form的name屬性賦值 b) 在編寫dll時沒有聲明類型本來為variant的變量為variant c) 在調用一個不存在的存儲過程時,或則調用該存儲過程的參數傳遞錯誤。 (六)對於使用IIS 3的編程人而言: a)Session 對像導致的出錯: 請參考MSDN中的文章KB Article: Q177036 b)ADO 2.0: 在IIS3中安裝了ADO 2.0導致出錯,請參考MSDN中的文章:KB Article: Q193310 |
| webasp.net |