The team I’m on at work recently took over maintenance on a number of older projects, some of which were never upgraded out of Visual Studio 2005. The first thing I did for one of them was convert the solution to VS2008. Unfortunately we didn’t have the time or the resources to do a full integration test and make sure the upgrade didn’t break any existing functionality. So while my conversion would insure we’d at least be using a relatively recent version of Visual Studio (upgrading all the way to 2010 wasn’t really an option at the moment) we couldn’t do it. That’s fine as we were going to be rewriting the whole thing sooner or later.
Yesterday I finally started doing some work in VS2005. As painful as it was, most of the issues were things I couldn’t really complain too much about. It wasn’t like I expected Microsoft to update VS2005 so it would run faster. After making mostly text changes, I ran into something that actually required me to run the debugger. I loaded it up and started testing my changes, however, none of my breakpoints were being hit. I looked at VS2005 and the debug toolbar wasn’t there. I restarted the debugger and noticed that the debug toolbar was disappearing right after the site started (though oddly IE was staying open). After googling a good amount, I came across this article which explains that IE8 breaks the debugger in VS 2005. According to the article, IE8 runs under multiple processes and VS2005 doesn’t know how to deal with this. The easiest solution, and the first offered, is to close down IE before you start the debugger. If you do that, then it will be able to figure out what it needs to attach to. Another easy solution (not mentioned in the article) if you don’t want to have to close IE every time you want to debug is to manually attach the debugger to the instance of WebDev.WebServer.Exe that is running your site.
While I rarely ever fire up VS2005, I’m sure there are some shops out there that are still using it pretty heavily. This seems like something that should have been patched by now or at least a little bit easier to find the solution to online. Since Microsoft pushes IE8 via the Windows Updates as a required update, it would seem to me that they would also add a fix for Visual Studio.