起因: 如果Visual Studio.NET安裝程序發(fā)現(xiàn)一些TLB文件和DLL文件已經(jīng)存在的話,就不會再次在計算機中注冊這些文件,因此 就有可能發(fā)生"VC軟件包不可用或未注冊"的提示. 在多數(shù)情況下,舊版本的的Visual Studio .NET容易引起這個錯誤,尤其是舊版本安裝在另一個操作系統(tǒng)下.
解決方案: 要解決這個問題,需要運行Visual Studio .NET修復(fù)程序.由于修復(fù)程序會強制注冊一些安裝程序中沒有被注冊的項目,因此能更有效地解決這個問題.
按照下列步驟運行修復(fù)程序: 在開始中,指向"設(shè)置",點擊控制面板,然后點擊"添加/刪除程序"; 在列出的已安裝程序列表中,點擊Visual Studio .NET,然后點擊"更改/刪除"; 點擊Visual Studio .NET安裝對話框1 2 3項目中的第二項; 點擊"修復(fù)/重裝",然后按照屏幕提示操作.
更多相關(guān)信息: 重現(xiàn)這個問題的做法 要重現(xiàn)這個問題,最好有裝在獨立分區(qū)上的兩個操作系統(tǒng).兩個Windows XP Professional會達到這個目的. 在一個操作系統(tǒng)下安裝Visual Studio .NET; 在另一個操作系統(tǒng)下Visual Studio .NET,安裝過程中改變安裝的缺省路徑,以匹配第一次安裝的路徑. 兩次安裝結(jié)果都會宣告成功. 然后啟動第二次安裝的Visual Studio .NET(你就會發(fā)現(xiàn)這個問題的重現(xiàn)).
這種安裝形式是永遠不推薦的,即使兩次安裝選項完全相同,而且你也會以此節(jié)省磁盤空間,但這種方法出現(xiàn)潛在問題的機會是很大的.如果一個Visual Studio .NET改變了文件和注冊選項,這些改變不會記錄到另一個Visual Studio .NET中,以致造成出現(xiàn)不可預(yù)料結(jié)果的潛在危險.
Q:不能啟動調(diào)試,災(zāi)難性錯誤(在 Visual Studio .NET 中調(diào)試 ASP.NET 應(yīng)用程序時出現(xiàn)的常見錯誤) Ahttp://support.microsoft.com/?id=306172 ---------------------------------------------------------------------------------------------------------------------------------
Q:Unable to start debugging on the web server A:如果遇到這些錯誤,則需要考慮以下幾個問題:
要檢查的內(nèi)容 遠程服務(wù)器上的 Web 應(yīng)用程序 存儲在 Visual SourceSafe 中并使用 FrontPage 服務(wù)器擴展的 Web 應(yīng)用程序 手動附加 要檢查的內(nèi)容 如果得到“無法在 Web 服務(wù)器上啟動調(diào)試”錯誤,請嘗試檢查下列內(nèi)容:
您是否正在運行一個允許 Visual Studio 調(diào)試器自動附加到 Web 應(yīng)用程序的 Windows 版本?如果不是,則需要啟動應(yīng)用程序而不調(diào)試,然后手動附加到它。(有關(guān)更多信息,請參閱手動附加和 ASP.NET 調(diào)試:系統(tǒng)要求。) 您的 Web 應(yīng)用程序是否具有 Web.config 文件? Web.config 文件是否通過將 debug 屬性設(shè)置為 true 而啟用了調(diào)試模式?有關(guān)更多信息,請參閱 ASP.NET 應(yīng)用程序中的調(diào)試模式。 Web.config 是否包含任何語法錯誤?您可以通過運行 Web 應(yīng)用程序而不調(diào)試來檢查是否存在語法錯誤。(從“調(diào)試”菜單中,選擇“開始執(zhí)行(不調(diào)試)”。)如果在 Web.config 中存在語法錯誤,則會顯示詳細信息。 您是否是“調(diào)試器用戶”(Debugger Users) 組的成員?如果您作為管理員登錄,則管理員是否在該組中? 您是否是通過指定特定的 IP 地址(如 100.20.300.400)而創(chuàng)建了項目?調(diào)試 Web 服務(wù)器要求 NTLM 身份驗證。默認情況下,IP 地址被假定為 Internet 的一部分,而在 Internet 上不進行 NTLM 身份驗證。若要更正這一問題: 創(chuàng)建項目時,指定 Intranet 上計算機的名稱。 -或-
將 IP 地址 http://100.20.300.400) 添加到您的計算機上的受信任站點列表中。(從 Internet Explorer 的“工具”菜單中,選擇“Internet 選項”,然后選擇“安全”選項卡)。 運行 IIS 服務(wù)器的計算機是否已安裝了 Visual Studio .NET 遠程組件? IIS 是否是在安裝了 Visual Studio .NET 之后才被安裝在本地計算機(即運行 Visual Studio .NET 的計算機)上的?IIS 應(yīng)在安裝 Visual Studio .NET 之前安裝。如果它是后來安裝的,則可能需要修復(fù) .NET 框架。 修復(fù) .NET 框架
<CD Drive>:/dotNetFramework/ dotnetfx.exe /t:c:/temp /c:"msiexec.exe /fvecms c:/temp/netfx.msi" 是否正確地指定了項目起始頁的 URL?擴展名和項目目錄是否正確? 是否正確地設(shè)置了 IIS 安全設(shè)置?若要驗證這一點,請檢查“默認 Web 站點”設(shè)置。 檢查“默認 Web 站點”的 IIS 安全設(shè)置
從“開始”菜單中,依次選擇“程序”和“管理工具”,然后單擊“Internet 服務(wù)管理器”(Windows 2000) 或“Internet 信息服務(wù)”(Windows XP)。 在“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框中,單擊您的計算機的樹控件 (Tree Control)。在“Web 站點”文件夾中,找到“默認 Web 站點”。 右擊“默認 Web 站點”并選擇“屬性”。 在“默認 Web 站點屬性”窗口中,選擇“目錄安全性”選項卡并單擊“編輯”。 在“身份驗證方法”對話框中,選擇“匿名訪問”和“集成的 Windows 身份驗證”(如果尚未選擇的話)。 單擊“確定”以關(guān)閉“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框。 單擊“確定”。 對于 ATL Server 應(yīng)用程序,請驗證 DEBUG 謂詞是否與您的 ISAPI 擴展相關(guān)聯(lián)。 對于 ASP.NET 應(yīng)用程序,請確保應(yīng)用程序的虛擬文件夾具有在“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”中設(shè)置的“應(yīng)用程序名稱”。 為 Web 應(yīng)用程序指定虛擬文件夾
從“開始”菜單中,依次選擇“程序”和“管理工具”,然后單擊“Internet 服務(wù)管理器”(Windows 2000) 或“Internet 信息服務(wù)”(Windows XP)。 在“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框中,單擊您的計算機的樹控件 (Tree Control)。在“Web 站點”文件夾中,找到此 Web 應(yīng)用程序。 右擊“默認 Web 站點”并選擇“屬性”。 在“默認 Web 站點屬性”窗口中,選擇“目錄”選項卡。 在“應(yīng)用程序設(shè)置”下,單擊“創(chuàng)建”。 應(yīng)用程序名稱即出現(xiàn)在此框中。
單擊“確定”關(guān)閉“屬性”對話框。 單擊“確定”以關(guān)閉“Internet 服務(wù)管理器”或“Internet 信息服務(wù)”對話框。 遠程服務(wù)器上的 Web 應(yīng)用程序 如果 Web 應(yīng)用程序位于遠程服務(wù)器上,請檢查以下問題:
是否運行了正確的安裝程序以便在服務(wù)器上安裝 ASP.NET/ATL Server 和遠程調(diào)試器組件? 您是否是服務(wù)器上的“調(diào)試器用戶”(Debugger Users) 組的成員?您是否具有調(diào)試在系統(tǒng)帳戶下運行的進程所必需的訪問特權(quán)? 根據(jù)安全設(shè)置的不同,ASP.NET 應(yīng)用程序可能在 inetinfo.exe(IIS 進程)下運行,也可能在 ASP 輔助進程 aspnet_wp.exe 下運行。默認情況下,aspnet_wp.exe 進程作為 SYSTEM 運行。若要調(diào)試在 aspnet_wp.exe 下運行的應(yīng)用程序,您需要具有管理員特權(quán)或為 aspnet_wp.exe 編輯 machine.config 文件,以便 aspnet_wp.exe 在用戶帳戶下運行。若要調(diào)試在 inetinfo.exe 下運行的應(yīng)用程序,您必須是運行 inetinfo.exe 的計算機上的管理員。
根據(jù)安全設(shè)置的不同,ATL Server 應(yīng)用程序可能在 inetinfo.exe 下運行,也可能在 ATL 輔助進程 dllhost.exe 下運行。若要調(diào)試在 inetinfo.exe 下運行的應(yīng)用程序,您必須是運行 inetinfo.exe 的計算機上的管理員,或者使用公共語言運行庫應(yīng)用程序設(shè)置將 dllhost 配置為作為特定用戶運行。 您是否正在使用“終端服務(wù)器”嘗試調(diào)試遠程計算機上的 Web 應(yīng)用程序?在 Windows XP 下,支持使用“終端服務(wù)器”對本機 Web 應(yīng)用程序進行遠程調(diào)試。而在 Windows 2000 或 Windows NT 下則不支持。 存儲在 Visual SourceSafe 中并使用 FrontPage 服務(wù)器擴展的 Web 應(yīng)用程序 如果 Web 應(yīng)用程序存儲在 Visual SourceSafe 中并且使用 FrontPage 服務(wù)器擴展作為它的 Web 訪問模式,請檢查以下問題:
Visual SourceSafe 是否與 FrontPage 服務(wù)器/Web 服務(wù)器位于同一臺計算機上?如果是,則可以使用“集成身份驗證”進行調(diào)試。(若要檢查“集成身份驗證”設(shè)置,請參閱此過程以檢查前面的“默認 Web 站點”的 IIS 安全設(shè)置。) 解決這一問題的另一種方法是將 Web 訪問模式從 FrontPage 更改為文件共享 (File Share)。 將 Web 訪問模式更改為文件共享 (File Share)
啟動應(yīng)用程序而不調(diào)試。(從“調(diào)試”菜單中,選擇“開始執(zhí)行(不調(diào)試)”。) 附加到適當?shù)?IIS 進程或輔助進程。默認情況下,對于 ATL Server 應(yīng)用程序為 inetinfo.exe;對于 ASP.NET 應(yīng)用程序為 aspnet_wp.exe。使用下面的過程來確定 ASP.NET 或 ATL Server 應(yīng)用程序在哪個進程下運行。 檢查 ASP.NET 應(yīng)用程序在哪個進程下運行