Configuring Visual Studio to debug classic asp
Posted on 2014-11-25
I would like to be able to set breakpoints in a large classic ASP application originally developed with Visual Studio 6 (interdev). To date I have put in several days and numerous hours following suggestions all over the web on how to configure my environment to accomplish this. And I have had on and off success...mostly off. The extent of my success was that I was able to set and hit a breakpoint in both a simple one page test script (see below) and in the full application. So I thought my problems were behind me and I could get on with the debugging. However on the following day I could no longer debug.
I have set up two different dev environments:
1. Visual Studio 2010 Pro on Windows XP Pro (with IIS 5.1 on dev machine)
2. Visual Studio 2013 Pro on Windows 7 Pro (with IIS 7.5 on dev machine)
(I set up two environments b/c there was a lot more info available about debugging ASP with vs 2010 than with vs 2013):
I successfully set breakpoints in both environments and was able to have them fire. But as I said above, now they are not working. For the same simple test script, each of the two environments is exhibiting a different problem.
In VS 2013, I can no longer set a breakpoint. Instead I get the message "A breakpoint cannot be inserted at this location." It's as if visual studio all of a sudden doesn't recognize the code as vbscript.
In VS 2010, I can set all the breakpoints I want, but after I attach to the appropriate dllhost, the breakpoints are never hit. Yes, I did refresh the page.
There just seem to be too many moving parts, settings, and things to configure in order to get this to work properly. Does anyone out there have in depth experience with this? I am attaching my test script - perhaps you can get debugging working in your environment and then we can compare notes.
============================ ASP Test script =============================
<%@ Language=VBScript %>
dim k, ksquared
response.write "Now it is " & time() & "<p>"
if k<>"" then
if isnumeric(k) then
ksquared=k * k
Response.Write "K squared is " & ksquared & "<p>"
Response.Write "'" & k & "' is not numeric. <p>"
Enter a value K to square:<input type=text size=5 name=k value='<%=k%>'>
<p><input type=submit value="submit">