我有一个混合的ASP.NET /经典ASP应用程序,我希望能够在ASP代码中设置断点。这可能吗?使用VS2010 Ultimate在Win7上运行IIS7。
答案 0 :(得分:13)
在VBScript中,Stop
语句可用于触发断点。
Response.Write "a line"
Stop
Response.Write "a line after the breakpoint
我假设这是您要调试的本地IIS7实例。在我的计算机上,当我尝试加载具有Stop
语句的示例页面时,我获得了Visual Studio即时调试器弹出窗口。您需要提供管理权限才能调试页面。
您可能还需要在IIS管理器的“ASP”小程序中启用服务器端调试,但刚刚检查时,我的计算机上的服务器端调试设置为False。
如果您不介意使用管理员权限(或已经执行)运行Visual Studio,那么您还可以尝试以下操作:
另请注意,如果对页面进行更改,则更改将保存到磁盘。在工作中,我使用VS2005作为经典ASP的主编辑器,正是因为我可以轻松设置断点。
我尚未尝试的第三个选项可能是最近发布的IIS Express。它应该是专为没有完全管理员权限的开发人员设计的,因此调试可能不需要提升提示。如果我有机会在接下来的几天内试一试,我会更新我的答案。
答案 1 :(得分:1)
response.write("my value....")
response.end
;)
答案 2 :(得分:0)
我遇到过这种情况几次。这总结了“典型的嫌疑人”。如果您了解更多信息,请添加修改或评论。
确保web.config具有debug =“True”
确保附加到正确的w3wp.exe进程
确保IIS中与此站点关联的App Pool配置将Maximum Worker Processes设置为1(可在Process Model部分找到)。
确保IIS中站点的ASP配置允许客户端和服务器调试(可在“调试属性”部分中找到)。
确保machine.config在部署代码中没有retail =“True”。此属性的默认值为false,允许调试。
- ss
答案 3 :(得分:0)
我不确定是否有人遇到过这个问题。我在IIS 7.5和VS2010上有一个asp.net和经典的ASP混合应用程序。我正在按照调试经典ASP的所有必要步骤,但没有运气。最后发现,当我们W3wp.exe自动获得附加时,默认情况下会附加选项“自动确定要调试的代码类型”,我认为在该选项中它只确定托管代码,而不是脚本。我改变它以明确选择要调试的代码类型并选择“脚本”..并且哇它有效。
还有一件事让我无法一起选择托管代码和脚本。