ASP.NET無法調試問題剖析

來源:互聯網
上載者:User
asp.net|問題 使用VS.NET的朋友可能經常會遇到無法調試ASP.NET的情況,有些朋友給出了一些可行的解決方案。初步總結一下,大體包括以下幾個方面(請注意:這兒討論的都是關於本地調試的解決方案):
- 確定目前使用者是否已經被加入到Debugger Users組
- 確定目前使用者是否具有Administrator許可權
- Web Application項目屬性中“允許調試ASP.NET”屬性是否被設為了True。也可以通過修改Web.config檔案的compilation元素的debug屬性為True來實現。
需要說明的是,本地調試ASP.NET應用程式需要的作業系統是Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server, Windows XP Professional 和 Windows Server 2003。也就是說,我們無法在Windows XP Home,WindowsMe 和 Windows98上進行調試工作。(廢話?)
一般情況下,按照上述的一些解決方案基本上就可以使用我們運行ASP.NET的調試工作了。實在有問題,通過嘗試使用.Net內建的ASPNET_REGIIS.EXE重新設定一下IIS,應該就可以了。
不過,本文希望和大家討論一下,如何在沒有本機Administrator許可權下進行ASP.NET的調試。初聽起來,是不是覺得沒有必要呀?但如果大家仔細想一想,就會認識到這樣做的必要性的。原因很簡單,在大多數管理比較正規的軟體公司,開發人員一般是不會被授予本機Administrator許可權的,那麼如何在沒有本機Administrator許可權的情況下調試ASP.NET應用程式就成了首先需要解決的問題了。為此我查閱一些資料(主要是MSDN online),並從中總結出了一套可行的解決方案,希望與大家共用之。測試環境:Windows XP Professional SP1, Vistual Studio .Net 2002.
首先,將當前登入的使用者加入到Debugger Users組中(此外,此使用者至少要屬於Users組。絕大多數情況下,開發人員會被授予Power Users許可權)。順便說一下,如果希望此使用者可以維護Web虛擬目錄,則需要將此使用者添加到VS Developers組。當然,這與能否調試ASP.NET應用程式無關。
接著,根據微軟的說法,如果此使用者希望在Windows XP Professional下調試ASP.NET應用程式,還需要將此使用者加入到“作為批次工作登入”策略中(當然,支援調試ASP.NET的其它版本Windows不需要做此設定),這樣就可以進行調試了。可以在“控制台->管理工具->本地安全設定”工具的“安全設定->本地策略->使用者權利指派->作為批次工作登入”部分加入此使用者。不幸的是,結果並不象微軟相關文檔所說的那樣,設定了這些後就可以進行調試。經過一段時間的研究,我從MSDN Online的一篇文章中找到了答案。相信大家都知道,在預設情況下,ASPNET_WP.EXE進程是以Web Server方式運行,其使用者名稱是ASPNET。在這種情況下,如何我們想對Web Application進行調試,就必須擁有本機Administrator許可權。這就為什麼我們至今還不能進行調試的原因。那到底該如何解決這個問題呢?.Net為ASP.NET使用者提供了另一種解決方案,我們可以讓ASPNET_WP.EXE以背景工作處理序的方式運行在指定使用者下,此時,指定使用者只要是屬於Debugger Users組就可以對它進行調試了。終於看到勝利的曙光了。
那麼,如何使ASPNET_WP.EXE運行在指定使用者帳號下呢?答案是,對machine.config檔案的相關配置項進行配置就行了。以VS.NET2002為例,此檔案位於C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\CONFIG中。我們要做的是,找到processModel配置項,修改userName和password屬性。注意,如果使用的是域使用者,請填入<domain>\username。然後,找到Temporary ASP.NET Files Properties目錄,此目錄與CONFIG目錄位於同一目錄下。在右鍵呼出的快顯功能表中選擇“屬性->安全->進階”,此時將彈出“Temporary ASP.NET Files Properties的進階安全設定”對話方塊。在“許可權”標籤中,點擊“添加”按鈕將指定使用者添加下“許可權項目”列表中。重啟電腦,大功告成。注意:上述操作需要有本機Administrator許可權,這需要系統管理員予以支援。
感覺上,應該還是比較容易進行配置的。若有什麼不足之處,請各位多多指教。



相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.