越过调试这道槛-ASP.NET无法调试问题剖析

原创 2004年10月14日 08:16:00

越过调试这道槛
——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权限,这需要系统管理员予以支持。
       感觉上,应该还是比较容易进行配置的。若有什么不足之处,请各位多多指教。

越过调试这道槛——ASP.NET无法调试问题剖析

越过调试这道槛——ASP.NET无法调试问题剖析       使用VS.NET的朋友可能经常会遇到无法调试ASP.NET的情况,有些朋友给出了一些可行的解决方案。初步总结一下,大体包括以下几个方面(请...
  • dy_nie
  • dy_nie
  • 2004年10月13日 23:12
  • 978

越过调试这道槛--ASP.net无法调试问题剖析

       使用VS.net的朋友可能经常会遇到无法调试ASP.NET的情况,有些朋友给出了一些可行的解决方案。初步总结一下,大体包括以下几个方面(请注意:这儿讨论的都是关于本地调试的解决方案): ...
  • tongdoudpj
  • tongdoudpj
  • 2008年01月22日 15:36
  • 452

ASP.NET无法调试问题

asp.net如果直接调试不成功可以把地址的localhost改为127.0.0.1试试。如果127.0.0.1可以调试那么去检查 C:\WINDOWS\system32\drivers\etc\h...
  • zzzzzzzert
  • zzzzzzzert
  • 2012年07月30日 10:57
  • 552

学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(四)

2.2.4基于Area的路由映射 对于一个较大规模的Web应用,我们可以从功能上通过Area将其划分为较小的单元。每个Area相当于一个独立的子系统,它们具有一套包含Models、Views和Con...
  • yejinwei1220
  • yejinwei1220
  • 2015年06月02日 16:15
  • 578

asp.net调试之-无法在Web服务器上启动调试。未能启动ASP.NET或ATL Server调试

  解决办法 方法一与方法二有时要合起来用,一般情况下方法即可方法一     点击“开始”-“控制面板”-“管理工具”-“组件服务”-“计算机”-“我的电脑”-“DCOM”选项, 选择其下的“IIS ...
  • huwei2003
  • huwei2003
  • 2009年01月06日 17:46
  • 6066

asp.net无法调试,配置一切正常

Asp.net开发中遇到一个奇怪的想象:一个简单的按钮事件,都无法调试,即使webconfig里面 "debug=true"。 开发环境:win7+VS2005+IE8。 解决方法:任务管理器里面打开...
  • mh942408056
  • mh942408056
  • 2014年07月23日 09:01
  • 1064

无法在web服务器上启动调试。未能启动asp.net调试。在不调试的情况下启动项目也许能获得更多信息。

出现这个问题的原因是网站的应用程序池选择不正确 解决方法是(IIS7.0): 进入IIS管理器----->右键你自己的网站名字------->管理网站-------->高级设置--------->...
  • hzw19920329
  • hzw19920329
  • 2015年11月15日 15:20
  • 2272

如何解决VS.NET无法调试项目问题?

在我所遇到的无法调试的情况下,一般用下面的方法可以解决:1:确认在“配置属性”中的“启用ASP.NET调试"为"True"2:确认你的"web.config"中的"debug=true"3:若你安装过...
  • cngkqy
  • cngkqy
  • 2006年12月11日 11:46
  • 1744

硬件调试经验

以前觉得虚焊、短路、断路是很简单、很容易解决的问题。虚焊、短路、断路虽然很简单,但是如果你碰到其中一种情况,可能要调试大半天才能发现问题所在,所以这些越基本的东西,更值得注意,无谓在这上面浪费调试时间...
  • u010976811
  • u010976811
  • 2014年10月23日 10:46
  • 1563

英雄传说5海之槛歌存档修改器

ED5的图片格式,解包格式已经弄清楚了,MMV动画上次也说过了,剩下的真不知道从哪里入手比较好,心里好烦,独占模式真麻烦。 好了,言归正传。很多朋友都反映ED5不能进行存档修改,原因很简单,加密了。这...
  • leexuany
  • leexuany
  • 2008年01月23日 22:19
  • 18201
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:越过调试这道槛-ASP.NET无法调试问题剖析
举报原因:
原因补充:

(最多只允许输入30个字)