asp.net調試錯誤解決方法收集(2)

12「/WebApplication1」應用程序中的伺服器錯誤。 --------------------------------------------------------------------------------對路徑「D:WINDOWSMicrosoft.NETFrameworkv1.1.4322Temporary asp.net Fileswebapplication180d7be46d84c0」的訪問被拒絕。 說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。 異常詳細信息: System.UnauthorizedAccessException: 對路徑「D:WINDOWSMicrosoft.NETFrameworkv1.1.4322Temporary asp.net Fileswebapplication180d7be46d84c0」的訪問被拒絕。 asp.net 未被授權訪問所請求的資源。請考慮授予 asp.net 請求標識訪問此資源的許可權。ASP.NET 有一個在應用程序沒有模擬時使用的基進程標識(通常,在 IIS 5 上為 {MACHINE}ASPNET,在 IIS 6 上為網路服務)。如果應用程序正在通過 模擬,則標識將為匿名用戶(通常為 IUSR_MACHINENAME)或經過身份驗證的請求用戶。 若要授予 asp.net 對文件的寫訪問權,請在資源管理器中右擊該文件,選擇「屬性」,然後選擇「安全」選項卡。單擊「添加」添加適當的用戶或組。突出顯示 asp.net 帳戶,選中所需訪問許可權對應的框。 調試許可權不夠 Try: 根據設計,ASP.NET 要求對根 Web 站點上或任何虛擬目錄上的 ASPNET 帳戶(Aspnet_wp.exe 進程帳戶)具有讀取、執行和列出訪問許可權。這是必需的,以便 ASP.NET 可以訪問內容文件並可以監視文件更改。 解決方案 若要為根 Web 站點上或任何虛擬目錄上的 ASPNET 帳戶添加讀取、執行和列出訪問許可權,請執行以下步驟: 在 Windows 資源管理器中,瀏覽到包含根 Web 站點(默認情況下是 C:InetpubWwwroot)或虛擬目錄的文件夾。 右鍵單擊該文件夾,然後單擊屬性。 在安全性選項卡上,單擊添加。 鍵入計算機名ASPNET(例如,在名為 Webdev 的計算機上,鍵入 WebdevASPNET),然後單擊確定。 允許以下 ASPNET 帳戶許可權: 讀取並執行 列出文件夾內容 讀取 單擊確定以關閉屬性對話框並保存所做更改。 備註:如果 Everyone 組或用戶組已具有對根 Web 站點或虛擬目錄的讀取訪問許可權,則無需執行這些步驟。 ------- 添加 IUSR_YouComputerName 和ASPNET 這兩個用戶對 C:WINDOWSMicrosoft.NETFrameworkv1.1.4322Temporary ASP.NET Fileswebapplication1dd84b00065eec7目錄的訪問許可權,設置為完全訪問, -------- 將 asp.net 用戶(具體是什麼記不太清楚了:< 可以到「安全性--用戶/用戶組」中查看)對目錄 C:WINDOWSMicrosoft.NETFrameworkv1.1.4322Temporary ASP.NET Files 的許可權改為可寫或更高即可。 13System.Reflection.TargetInvocationException: 調用的目標發生了異常。 ---> System.UnauthorizedAccessException: 拒絕訪問。 --- 內部異常堆棧跟蹤的結尾 --- at System.RuntimeType.InvokeDispMethod(String name, BindingFlags invokeAttr, Object target, Object[] args, Boolean[] byrefModifiers, Int32 culture, String[] namedParameters) at System.RuntimeType.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args, ParameterModifier[] modifiers, CultureInfo culture, String[] namedParameters) at System.Type.InvokeMember(String name, BindingFlags invokeAttr, Binder binder, Object target, Object[] args) at System.DirectoryServices.DirectoryEntry.Invoke(String methodName, Object[] args) at aspnetc.pubFunction.IISManager.Create(VirtualDirectory newdir) in f:ziliao1aspcpubfunctioniismanager.cs:line 132 如果是在asp.net 下使用的話,要記得在 中添加 否則就會出現 「異常詳細信息: System.UnauthorizedAccessException: 拒絕訪問「。 iis訪問站點時出現輸入用戶名和密碼 1.iis->站點->屬性->目錄安全性->身份驗證和訪問控制->啟用匿名訪問 2.不知你有沒有添加這"IUSR_yourname"INTERNET 來賓賬戶!如沒有添加就應該是這個問題所引起. (在"默認網站---屬性-----目錄安全性-----編輯------瀏覽-----高級-----立即查找"即可找到本賬戶,雙擊添加即可) 3.把你網站文件所在的目錄的,全權改成 everyone 再試一下先. 樓上們 所說的一般情況下默認是不會錯的. 4把iis目錄所在的文件夾許可權加iuser_機器名 "Visual Studio .NET已檢測到指定的Web伺服器運行的不是ASP.NET 1.1 版..."的解決辦法 選擇自 great_domino 的 Blog 關鍵字 "Visual Studio .NET已檢測到指定的Web伺服器運行的不是ASP.NET 1.1 版..."的解決辦法 出處 昨天同事MM在調試一台裝有.NET WEB伺服器又出現了"Visual Studio .NET已檢測到指定的Web伺服器運行的不是ASP.NET 1.1 版.."的錯誤,叫我去幫忙搞,搞了半天,才搞定,到底是什麼問題原來她將IIS中"默認web站點"刪除,自己新建了一個站點,運行正常,就是無法編譯,新建也不成,出現非1.1版本錯誤,以前出現錯誤是因為,伺服器使用了固定IP,而管理員將屬性中的IP地址為指定的ip地址!現在也很有必要做個總結!步驟嘗試如下:1.當然先確定一下,是否真的裝了1.1的版本,查看路徑 C:WINNTMicrosoft.NETFrameworkv1.1.43222.也是很多人都知道,重新安裝 aspnet_regiis ,怎麼安裝,就不多說了,網上很多!3.重啟IIS,重新啟動ASP.NET服務程序4.如果你的Web伺服器使用了固定IP:確定你的"Internet信息服務"中使用的是"默認web站點"並且其屬性中的IP地址為"(全部未分配)",而不是你己指定的ip地址。可以修改"默認web站點"的名字,但不要刪除,一旦刪除,只要在新建的時候,名稱嚴格為"默認web站點"也可以恢復5.如果你的IE使用了代理的話,把 Bypass Proxy Server for local adresses勾上6.如果你本身已經有個web站點,請把它卸載掉,不用重新安裝vs.net,只要重新安裝下iis也可以。7.如果還是不行,那可真沒什麼辦法了,那就重裝IIS,FRAMWORK,.NET,操作系統吧最後說一個安全問題,盡量不要把IIS指向默認路徑C:Inetpubwwwroot 這個路徑很容易受攻擊,最好重新指向一個新的路徑,然後把wwwroot文件夾刪除掉,需要用戶上傳文件的,千萬要阻止上傳".HTA"文件,做好訪問網站的許可權,屏蔽執行HTA文件,做好資料庫備份工作!又是工作中的一點經驗,供大家參考,少走彎路!確實是Bug 1.你的Web伺服器使用了固定IP:確定你的"Internet信息服務"中使用的是"默認web站點"並且其屬性中的IP地址為"(全部未分配)",而不是你己指定的ip地址。然後在回到VS.NET中重試,或許可以解決。 2.以上方法不能解決問題時,考慮MSDN中的解決辦法,如下: Visual Studio .NET 無法確定在 Web 伺服器計算機上運行的是否為 ASP.NET 1.1 版。該錯誤可能在幾種不同情況下發生。請檢查是否屬於以下情況: a, 確保 .NET Framework 1.1 版安裝在 Web 伺服器計算機上。有關詳細信息,請參見 Visual Studio .NET 軟體要求。 b, 如果 ASP.NET 已安裝在 Web 伺服器計算機上,但仍然遇到此錯誤,則可能是配置問題。為了糾正有問題的安裝或配置,可以使用名為 aspnet_regiis 的 ASP.NET 實用工具。在類似如下所示的路徑中可以找到此命令行實用工具: C:WINDOWSMicrosoft.NETFrameworkv1.1.nnnn 其中 nnnn 表示四位內部版本號。在最高版本號下查找。使用 /i 開關運行該實用工具: aspnet_regiis /i 提示 您可以從命令的正確目錄中直接打開該命令窗口。從 Windows 的"開始"菜單,指向"程序"、"Visual Studio .NET 2003"、"Visual Studio .NET 工具",然後選擇"Visual Studio .NET 命令提示"。在窗口打開後,鍵入 aspnet_regiis /i。 不需要吧,在程序的vs.net的vs.net tool 的 vs.net command prompt下 輸入: aspnet_regiis -r 問題就可以解決了。 仔細的看看 aspnet_regiis 的參數的意義 查詢參數 aspnet_regiis /all 會列出所有的參數 --------------------------------------------- 1、當站點主目錄沒有創建應用程序: 通過FP擴展+虛擬目錄的方式來建立WEBAPP,步驟如下: (1)、右擊站點---所有任務--配置伺服器擴展 (2)、建立虛擬目錄***,並使其配置應用程序 (3)、在VS中建立WEB項目,名稱也為*** (4)、通過通過FP擴展來建立WEB 2、當站點主目錄創建應用程序: 第一種方法--FP擴展: (1)、右擊站點---所有任務--配置伺服器擴展 (2)、在VS中建立WEB項目,名稱自己隨便定 (3)、通過通過FP擴展來建立WEB 第二種方法--WEB共享: (1)在IIS中將IP地址改為全部未分配 (2)將地址改為127.0.0.1或LOCALHOST 3、還不能建立時請試用下列方法: (1)「站點」---右鍵---「屬性」---「所有任務」---「重新計算 Web 上的超鏈接」 然後在vs.net下通過frontpage伺服器擴展創建 (2)指示要通過文件共享直接訪問 Web 伺服器上的項目文件;不需要在該伺服器上安裝 FrontPage 伺服器擴展。 安裝 Visual Studio .NET 時,將創建一個「VS Developers」(VS 開發人員)用戶組,並授予該用戶組對 inetpubwwwroot 文件夾的讀/寫許可權。想使用計算機上的文件共享創建 Web 項目的任何用戶都需要添加到「VS Developers」(VS 開發人員)用戶組中。新建的「VS Developers」(VS 開發人員)組沒有任何成員,所以,即使是安裝 Visual Studio 的用戶,也必須手動將自己添加到這個組中。 如果不希望將 Visual Studio 安裝到伺服器上,可以通過 Visual Studio 安裝程序僅安裝伺服器組件,以創建「VS Developers」(VS 開發人員)組。 (3)win2003下: 在VS.NET中,為了測試URL和UNC, VS.NET會在目錄下面生成一個.tmp文件,然後通過HTTP對該文件發出請求。但是在IIS 6中,出於安全考慮,tmp文件沒有註冊,默認情況下,會被block然後產生HTTP 404錯誤。 解決這個問題,請您參閱下面的方法: 1。打開IIS管理器。 2。右鍵點擊"Default Web Site"並選擇Properties. 3。 點擊"Http Header". 4。 點擊"MIME Types". 5。 點擊「New」。 6。 在Extension中,輸入".tmp". (不需要引號) 7。 在MIME Type中,輸入 "Temp". (不需要引號) 還有一種解決方法,您可以使用下面的命令行: %systemdrive%inetpubadminscriptsadsutil.vbs set w3svc/1/root/MimeMap .tmp,temp 在創建Web Application時,VS.Net需要在創建路徑下創建後綴名為.tmp的臨時文件。 當VS.Net創建好項目之後,就會以HTTP的方式向Web文件夾尋求項目文件,同時也尋求臨時文件。由於windows2003在某些安裝步驟下的IIS沒有把.tmp文件設置為MIME類型,所以IIS向VS.Net返回了未知文件類型的錯誤,即找不到文件。所以VS.Net認為你的IIS路徑設置不對。 未指定的錯誤 Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. Exception Details: System.Runtime.InteropServices.COMException: 未指定的錯誤 試圖運行項目時出錯:無法在 WEB 伺服器上啟動調試。您沒有調試該伺服器的許可權。 驗證您是伺服器上「Debugger Users」組的成員。1.作為 Administrator 登錄。 2.運行 Administrator tools 中的 Computer management。 3.選擇 Local users and groupsgroups 節點。 4.雙擊右邊窗格中的 Debugger Users 組。 5.單擊 Debugger users properties 對話框中的 Add 按鈕。 6. 鍵入用戶帳戶並單擊 OK。 設備未就緒。 說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。 異常詳細信息: System.IO.IOException: 設備未就緒。posted on 2006-03-23 11:15 DotNet菜園 閱讀(1843) 評論(1) 編輯 收藏 引用 收藏至365Key 所屬分類: AspNet Feedbackprivate void PrepareConnection() { string ConnStr=System.Configuration.ConfigurationSettings.AppSettings["ConnectionSqlServer"]; connection=new SqlConnection(ConnStr); string strSql="select * from Questions"; command = connection.CreateCommand(); command.CommandText= strSql; command.CommandType=CommandType.Text; adapter= new SqlDataAdapter(); adapter.SelectCommand = command; commandBuilder = new SqlCommandBuilder(adapter); adapter.UpdateCommand=commandBuilder.GetUpdateCommand(); adapter.DeleteCommand=commandBuilder.GetDeleteCommand(); adapter.InsertCommand=commandBuilder.GetInsertCommand(); } 為什麼出現: 對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。 說明: 執行當前 Web 請求期間,出現未處理的異常。請檢查堆棧跟蹤信息,以了解有關該錯誤以及代碼中導致錯誤的出處的詳細信息。 異常詳細信息: System.InvalidOperationException: 對於不返回任何鍵列信息的 SelectCommand 不支持 UpdateCommand 的動態 SQL 生成。 源錯誤: 行 39: adapter.SelectCommand = command; 行 40: commandBuilder = new SqlCommandBuilder(adapter); 行 41: adapter.UpdateCommand=commandBuilder.GetUpdateCommand(); 行 42: adapter.DeleteCommand=commandBuilder.GetDeleteCommand(); 本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/zsczyhua/archive/2008/02/19/2104870.aspx
推薦閱讀:

承認錯誤
談戀愛最常犯的五種錯誤
正確的理論只有一個,錯誤的理論卻可以很多(一)
正確及錯誤拉伸姿勢全解,做一個正確的拉伸動作!
孩子犯錯先別急著指責 家長也不敢承認自己的錯誤

TAG:方法 | 錯誤 | 解決方法 | 收集 |