Script debugging broken in VS 2005 after installing IE8
[Note: This post has been updated with new information]
There is currently an issue in VS 2005 after you install IE8 where script debugging is broken. If you are using VS 2008, this will not be a problem.
Brad Sullivan posted the work around in the debugger forum. Here is what he said:
IE 8 has a feature called Loosely-Coupled Internet Explorer (LCIE) which results in IE running across multiple processes.
Older versions of the Visual Studio Debugger get confused by this and cannot figure out how to attach to the correct process. You can work around this by disabling the process growth feature of LCIE. Here's how:
1) Open RegEdit
2) Browse to HKEY_LOCALMACHINE -> SOFTWARE -> Microsoft -> Internet Explorer -> Main
3) Add a dword under this key called TabProcGrowth
4) Set TabProcGrowth to 0
Note that If you are using a 64-bit computer, you want to edit the 32-bit registry.
In addition to this, IE's installer will re-disable script debugging. So you will need to reenable it:
- Open Internet Explorer
- Go to Tools->Internet Options
- Switch to the Advanced tab
- Uncheck 'Disable script debugging (internet explorer)'
One finial note - if you are attempting to debug a browser extension or ActiveX control written in native or managed code, you may experience the same problem. This will happen on all OSs with VS 2005, and on XP/Server 2003 with VS 2008. In this situation, you need to follow Brad’s work around.
[July 10th Update] : We recently discovered another issue with Script Debugging after installing IE8. The issue does not always repro, which is how we missed it, but there is a workaround. To work around:
- Install Visual Web Developer 2008 Express Edition, which is a free download from http://www.microsoft.com/express/vwd/Default.aspx.
- Optional step: Uninstall Visual Web Developer express
This will update the Visual Studio shared script debugging files (the files shared between every version of Visual Studio to enable script debugging) from the Visual Studio 2005 version to the 2008 version, and will thus work around the issue.