如何在VS 2012中调试Classic ASP应用程序

9

可能重复:
如何调试经典ASP?

  • 我在VS2012中添加了一个新网站,并将其指向我在IIS中创建的虚拟目录。
  • 在IIS中,我启用了服务器端调试。
  • 此网站在IIS中的端口为5555。
  • 在VS中,对于项目属性,我将启动URL设置为localhost:5555,这会运行我的网站。
  • 项目属性中没有启用任何调试器(Classic ASP中没有调试器)。
  • 我在一个文件中设置了断点,该文件包含在default.asp的底部。
  • 我不使用调试运行站点(Ctrl-F5)。
  • 然后我附加到进程(IE10)。
  • 然后我刷新主页(default.asp)。
  • 断点没有被触发。
  • 如何让调试器停在我的断点处,以便我可以调试此页面?

这是现有的代码。 我只是想让它工作。 除非它是修复问题的错误,否则不需要进行代码评论!

我在此JavaScript方法的第一个代码块顶部附近设置了断点,但从未被触发。

function declareLogos() {
    <%   ' get logos

    SQL = "SELECT l.LogoFileName, p.SortOrder FROM InrixCustomerLogo l join InrixCustomerLogoPage p on l.LogoCode = p.LogoCode WHERE p.PageFileName = '" & fn & "' AND SortOrder > 0 ORDER BY SortOrder"
    On Error Resume Next
    Set oLOGO = oConn.Execute(SQL)
    logoerror = Err.Number
    On Error Goto 0
    x = 1  ' array counter

    %>

    <% If NOT logoerror Then %>
    <% Do While NOT oLOGO.EOF %>
    i[<% =x %>] = '<% =oLOGO("LogoFileName") %>';
    <% oLOGO.MoveNext : x = x + 1 : Loop %>
    <% End If %>

    imax = <% =x-1 %>;
    ilast = <% =(((x-1)*4)/4) %>;  // <% =(((x-1)*4)/4) %>   this is imax - 1 that is divisible by four
}

这些指示没有任何帮助。我已经按照那篇文章中概述的几个简单步骤完成了。 - birdus
1个回答

4
如果是服务器端asp构建客户端javascript函数,那看起来像这样?如果是这种情况,将调试器附加到explorer.exe是无用的(除非您想调试生成的JavaScript函数 - 在这种情况下,F12 IE开发工具会更容易),您需要将调试器附加到Inetinfo.exe(运行您的服务器端asp的iis进程)或Mtx.exe / w3wp.exe(取决于您的配置和iis版本)。有关更多信息,请参阅以下msdn文章:

http://msdn.microsoft.com/en-us/library/ms241740.aspx

还有一篇关于VS2008的类似文章(原理应该与2012类似):

http://www.codeproject.com/Articles/28792/Debugging-Classic-ASP-VBScript-in-Visual-Studio-20


第一个链接不再可用,这里显示的信息是“此主题不再可用”。 - Ehsan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接