VS2003的调试症状:“试图运行项目时出错:无法在web服务器上启动调试。”的解决方法

来源:互联网 发布:迪杰斯特拉算法 严蔚敏 编辑:程序博客网 时间:2024/05/01 21:12

从安装VS2003以来可以编译并运行项目,就是不能用VS2003的调试功能,症状:“试图运行项目时出错:无法在web服务器上启动调试。”,我用了以下方法都没有能开启VS2003的调试功能。
                  1、用aspnet_regiis -i 重新注册;
                  2、给我用的Administrator用户添加了Debugger Users组;
                  3、设置解决方案->配置属性->调试->启用ASP.NET调试=true(当我把启用SQL调试=true时,可以启用调试,但是无法在断点出停止);
                  4、在IIS中给正在开发的项目建立虚拟目录,并在虚拟目录的目录选项页 中
                  创建应用程序名(同项目一个名字)。(注:如果不设置这步,可能会出现 “/”应用程序中的服务器错误 )
                    这个问题一直困扰着我,去网上搜索,也没有找到答案。
                    今天在MSDN上看到这篇文章(PRB:调试 ASP.NET 应用程序时出现“Unable to Start
                  Debugging on the Web Server”(无法在 Web 服务器上启动调试)错误信息)最后写的
                  信息适用于ASP.NET 1.1。。。ASP.NET 1.0。。。,突然想到我电脑安装了.NET Framework 1.1
                  和 .NET Framework 2.0,IIS站点的ASP.NET
                  version设置为:2.0.50727,我马上打开IIS站点,把ASP.NET
                  version设置为:1.1.4322,打开VS2003,设置断点,运行调试,o yeah,终于可以调试了。
                    原因是VS2003不完全支持在ASP.NET 2.0上调试,必须在ASP.NET1.0、ASP.NET
                  1.1上调试。这个小问题居然困扰了我那么久,看来微软的东西也有不向下兼容的,嘿嘿!!
                    另外还摘录了一篇《VS.NET调试.NET出现的常见错误》,希望能给还在为无法在VS2003中调试的朋友一些帮助。
                   VS2003“无法在 Web 服务器上启动调试”窗口(没有其他任何提示)    CSDN
                  Blog推出文章指数概念,文章指数是对Blog文章综合评分后推算出的,综合评分项分别是该文章的点击量,回复次数,被网摘收录数量,文章长度和文章类型;满分100,每月更新一次。
                  VS2003出现“无法在 Web 服务器上启动调试”的一个原因
                  今天用vs2003做了个简单的aspx页面,调试->启动,却出现了无法在 Web
                  服务器上启动调试,后面两行字.在网上找了找原因:
                      * 1:确认在“配置属性”中的“启用ASP.NET调试"为"True"
                        2:确认你的"web.config"中的"debug=true"
                        3:若你安装过wind2000 SP4后,则要在命令行执行"regsvr32 i
                  aspnet_isap.dll"
                       
                  4:在IIS里查看站点信息,选中"目录安全性",里面有"匿名访问和身份验证控制",再点击"编辑..",确认"集成Windows身份验证"选项被选中

                        5:在IE选项->"安全设置"->"自定义级别"里有"用户验证",确认选中"自动使用当前用户名和密码登录"
                       
                  6:运行C:/WINNT/Microsoft.NET/Framework/v1.0.3705/aspnet_regiis.exe
                  -i
                       
                  7:控制面板--管理工具--计算机管理--本地用户和组--用户,双击ASPNET用户,为其隶属于添加Administrators用户

                        以上操作最管用的就是第5步和第7步。 
                  按照上面的第4,7条我做了下,重启了iis,但是还是出现无法在 Web 服务器上启动调试, 却出现了下面这样的现象.
                  现象:调试的时候弹出“无法在 Web 服务器上启动调试”窗口,没有其他任何提示。
                  网上找了下,终于解决了问题.
                   原因:安装了两个以上版本的.net
                  Framework,尤其是安装了2.0以上的版本,并在IIS中设置ASP.NET为2.0以上版本。
                  VS2003并不完全支持.net Framework 2.0以上版本的调试。
                  解决方法:在IIS属性中把VS.NET设置为2.0以下版本。
                  http://www.fly06.com/blog/post/19.html
                  问题:在同一 IIS 进程中不可能运行两个不同的 ASP.NET 版本。请使用 IIS
                  管理工具重新配置服务器以在一个单独的进程中运行应用程序。
                  解决方法:新建一个应用池就可以了
                  郁闷,今天早上以来开机就遇上了这个问题: 服务器应用程序不可用 您试图在此 Web 服务器上访问的 Web
                  应用程序当前不可用。没有办法,上网看看有没有什么相关的资料,看到了这篇文章:http:
                  //www.cnblogs.com/cowbird/archive/2005/02/16/104546.html但是我想问题不可能是那个样子,想来想去,想到了查看应用程序日志:
                  在同一 IIS 进程中不可能运行两个不同的 ASP.NET 版本。改下一虚拟目录的应用程序池.让ASP.NET 1.1
                  和ASP.NET 2.0的虚拟目录使用不同的应用程序池.结果问题解决,好了搞定!
                  Net 服务应用程序不可用。改下一虚拟目录的应用程序池.让ASP.NET 1.1 和ASP.NET
                  2.0的虚拟目录使用不同的应用程序池.修改方法是:在iis管理器中的应用程序池新添一个应用程序池(app2),然后再默认网站下面选择你的虚拟目录,为这个虚拟目录选择新的应用程序池,方法是选择虚拟目录下面的属性,然后再"目录"页下修改。保证指定的用户对上面的目录有访问权限后,还需要指定用户对虚拟目录的访问权限,方法是iis管理器下面选择你要运行的虚拟目录,然后点击右键,选择权限。
                  win2003+vs2003+iis6.0,调试 ASP.NET 应用程序时出现"无法在 Web
服务器上启动调试"的错误信息
                  在修改以前的一个视频会议项目的时候遇到了这个问题,郁闷了我半天,下面载录了一个不知名战友的经验:
                  ?
                  详细的说明是:无法在 Web 服务器上启动调试。您没有调试该服务器的权限。
                  验证您是该服务器上的“Debugger Users”组的成员。
                  我也重启了IIS  iisreset 设置了Administrator的用户组 为 Administrators
                  Debugger Users 还有一个VS Devolopers 最后还是一样不行,
                  后来又设置了 aspnet_regiis -i 还是不行,重启机器也是不行。
                  而且新建一个项目也不行,出现同样的错误。
                  [10月21日]
                  今天实在没有办法了,只好重新Ghost机子,但问题还是存在的,只不过新建的项目可以调试了,不知道为什么运行的时候提示换了“发送调试HTTP请求时发生服务器端错误”
                  刚才我重启了IIS又出现这样的提示:“试图运行项目是发生错误”如果我安装了EditPlus就会打开它,然后提示“http://localhost/test/index.aspx”是否创建。真被这个搞怕了。
                  ????这个项目放在其它机器上可以,说明代码本身没有问题,但就是放到我机器上不行了。真的搞不懂了。
                  [10月23日]
                  今天终于被我搞定了。原来是项目的属性里没有设置好,我也没有修改这个设置,也不知道什么时候搞错了。就是在属性->配置属性->调试
                  中的始终使用Inertnet Explorer
                  应该设为True。否则就会其它关连的程序来打开。如是找不到关连程序就是提示出错。而且没有帮助。
                  [1月6日]
                  今天又碰到了,后来我把网站从信任站点里删除加到本地Intrenet就好了
                   爆晕的vs2003 asp.net 调试(第一篇发到文章里面去了,原来随笔和文章不一样?天意)
                  自从装了WIN2003好像就不太平,先是保留了原来的80端口网站,和重装前XP类似,自己建了一个8090端口的网站,然后把正在做的系统用虚拟目录添进去,在VS2003调试的时候,发现假如是选择“启动项目”,启动某一个页面的时候,可以正常调试,可是假如改成我最喜欢的“等待外部连接”的时候,就不能调试了,报告服务器不支持asp.net调试。查了查,W3WP.exe有两个,一个是支持托管代码的,一个不支持,不知道是不是在附加的时候附加错了……
                  网上查了老半天,没查到相关的东西,只好自己摸索。
                  先是看到MSDN的一句:用完全机器名命名的是默认网站云云……也许和默认网站有关?把新网站删除了,把原来的虚拟路径换到默认网站里面去,结果真的有两个项目可以用等待外部连接启动了!
                  但是没多久又来了:同样是ASP.net的项目,居然有的项目还是不能用“等待外部连接”模式启动调试!
                  晕得我一阵阵的。
                  又怀疑是vswebcache和vss的问题,但是取消绑定,清空vswebcache,还是无济于事……天啊……
                  亿般无奈,想想既然有项目可以启动,那新建的项目是不是也可以呢?试了试,新建项目果然可以“等待外部连接”启动。
                  实在没有办法……只好把原来的项目文件删掉,从新在原目录建立一个新的项目,然后把原代码文件从新包含到项目里面……苦啊!!!!!
                  不知道有没有高手知道是怎么回事呢?

                  为了开发ASP.NET应用。在公司的Windows Server 2003上安装Visual Studio.net
                  2003。安装过程没有什么大问题。但是安装后VS.NET无法新建新ASP.NET工程,在网络上查找相关文章,问题基本上得到解决。主要有以下几点:
                      * 在Windows2003下本机浏览http://localhost 提示HTTP
                  400错误;但是用http://<本机IP>就正常。原因是IIS相应网站中的网站属性页中的IP地址设置被固定为本机IP地址192.168.xxx.xxx,导致无法通过IP地址127.0.0.1来访问,将该IP地址设置改为“(全部未分配)”即可。
                      * 创建VS2003的ASP.NET工程,使用FrontPage Extended
                  2000方式来访问Web网站,提示无法操作/bin目录,可能是权限不够。这和该win2003系统下安装了IIS
                  WSS(Windows SharePoint Servers 2.0)有关,解决的方法是打开Share
                  Point管理中心,点[配置虚拟服务器设置]链接,点[默认网站]链接,点[定义管理路径]链接,在[定义管理路径]页面下,添加一个对应于要添加的
                  asp.net web应用虚拟目录的排除路径即可。
                      *
                  无法用VS2003调试ASP.NET,web页提示“当前信任级别设置不支持调试。”。解决的方法是在工程的web.config文件中添加一配置行:
                        <!-- WSS设置的信任级别设为Full-->
                        <trust level="Full" originUrl="">
                  事件类型: 错误
                  事件来源: ASP.NET 2.0.50727.0
                  事件种类: 无
                  事件 ID: 1062
                  日期:  2007-10-12
                  事件:  9:17:03
                  用户:  N/A
                  计算机: SF
                  描述:
                  在同一 IIS 进程中不可能运行两个不同的 ASP.NET 版本。请使用 IIS
                  管理工具重新配置服务器以在一个单独的进程中运行应用程序。
                  有关更多信息,请参阅在 http://go.microsoft.com/fwlink/events.asp
的帮助和支持中心。
                  1:确认在“配置属性”中的“启用ASP.NET调试"为"True"
                  操作步骤:
                  VS环境里面,菜单-项目-项目属性(最下得选项)-配置属性(左边第二项)-Debugging-Enable Asp.Net
                  Debugging 设置为True
                  作用:
                  确定调试器能过启动IIS来调试asp.net页面!
                  2:确认你的"web.config"中的"debug=true"
                  操作步骤
                  打开web.config文件,设置debug="true";
                  作用:配置调试器可以调试该应用程序
                  3:若你安装过wind2000 SP4后,则要在命令行执行"regsvr32 i aspnet_isap.dll"
                  操作步骤:
                  开始-运行-cmd-regsvr32 i aspnet_isap.dll
                  作用:
                  重新注册aspnet_isap.dll
                  4:在IIS里查看站点信息,选中"目录安全性",里面有"匿名访问和身份验证控制",再点击"编辑..",确认"集成Windows身份验证"选项被选中
                  操作步骤:
                  我的电脑-右击-管理-应用程序管理-IIS-默认网站-你得站点-右击-目录安全性-认证和访问方式-勾选匿名访问和身份验证控制,编辑-勾选确认"集成Windows身份验证“
                  作用:
                  匿名访问:此处设置不是为了解决你得调试问题,是为了能够使局域网或者广域网中其他用户通过输入你得Ip和网站名称来访问该网站
                  集成Windows身份验证:刚建立得网站身份验证方式为Windows要求必须用windows用户身份访问该网站,不更该IIS,将无法正常调试!
                  5:在IE选项->"安全设置"->"自定义级别"里有"用户验",确认选中"自动使用当前用户名和密码登录"
                  步骤上述已经详细
                  作用不详
                  6:运行C:/WINNT/Microsoft.NET/Framework/v1.0.3705/aspnet_regiis.exe
                  -i
                  操作步骤;
                  cd到C:/WINNT/Microsoft.NET/Framework/v1.0.3705/目录
                  aspnet_regiis.exe -i
                  或者start=all progames - visual studio.net 2003-visual
                  studio.net tools - command prompt-aspnet_regiis.exe -i
                  作用:
                  重新注册当前得.net
                  framework版本即(v1.0.3705)到iis,为了解决调试得时候出现您所运行得.net版本不是v1.1得问题
                  7:控制面板--管理工具--计算机管理--本地用户和组--用户,双击ASPNET用户,为其隶属于添加Administrators用户

 

原创粉丝点击