无法在VS2005中调试ASP.NET不会在断点处停止

时间:2010-10-29 18:36:48

标签: asp.net debugging visual-studio-2005 breakpoints

我有一个令人费解的问题。我在VS2005中有一个新的ASP.NET Web应用程序运行得相当好,但我遇到了问题,并希望设置一个断点来查看发生了什么。我已经在Debug模式下编译了项目。我在web.config中设置了debug = true。但似乎IDE根本没有附加到进程。我忽略了什么吗?我使用的是开发服务器,而不是IIS。这在过去从来就不是问题,但这次是。

我忽略了什么吗?谢谢你的帮助。

罗布

3 个答案:

答案 0 :(得分:2)

我有一段时间回到VS2005。我不记得我从哪里得到了以下说明(将它们复制到我现在复制给你的文件中),但是按照以下步骤为我工作。它与IE8将自身附加到多个进程并弄乱调试器有关。警告,您可以编辑注册表,因此请自行承担风险/采取所有正常的预防措施等。

  
      
  1. 打开RegEdit
  2.   
  3. 转到HKEY_LOCALMACHINE - >软件 - >微软 - >互联网   资源管理器 - >主要
  4.   
  5. 在此密钥下添加一个名为TabProcGrowth
  6. 的dword   
  7. 将TabProcGrowth设置为0

         

    如果遇到同样的问题   Vista或更新,您还需要   关闭保护模式。

  8.   

请注意我当时正在运行XP,所以我不必在那里使用“Vista或更新”条款。不知道这是否有任何不利影响。

答案 1 :(得分:0)

很抱歉,如果我说的是显而易见的,但您需要开始调试<F5>而不是仅在编译后运行可执行文件。你在做这个吗?

答案 2 :(得分:0)

如果你没有点击断点,你要么不调试(F5),要么根本没有到达你的代码。如果您想知道这两者中的哪一个发生,您可以在断点所在的代码处抛出异常。如果您的应用程序在异常时失败,您知道您没有使用调试器运行它。如果它在异常情况下没有失败,那么你根本就没有达到那段代码,你将不得不更加努力地查看你实际运行的代码。

throw new Exception("if I see this exception, I am not running the debugger");

或许您正在运行开发服务器的两个实例。我有时会这样做。在Windows系统托盘中查找图标。如果您看到两个(或更多),则可以右键单击以停止它们并重新启动调试。

alt text