为什么在IE8下VS debuger会不起作用呢?
如果你尝试使用IE8来Debug你的程序,通常会发现,VS Debuger会停止或直接忽略你设的断点!
为什么会这样呢?
好吧!IE8 有一个叫做散偶合 Loosely-Coupled Internet Explorer (LCIE) 的默认设置,这个设置使IE可以运行在多个进程上。
http://www.microsoft.com/windows/internet-explorer/beta/readiness/developers-existing.aspx#lcie
老版本的VS Debuger会不清楚到底要附加到哪个进程才是正确的。
要解决这个问题,你必须禁用LCIE的进程增长功能,以下为具体步骤:
1)打开注册表 RegEdit
2)导航到 HKEY_LOCALMACHINE -> SOFTWARE -> Microsoft -> Internet Explorer -> Main
3)双击TabProcGrowth 键
4)将TabProcGrowth 的Value data 设置为0
5)如果没有TabProcGrowth,则新建一个名称为TabProcGrowth的 DWORD类,数据值设置为0.
如果你在Vista 或者 newer 上碰到同样的问题,你必须将protected mode 设置为Off。
OK。你可以调试你的程序了。
本文介绍了解决IE8环境下VSDebugger无法正常工作的问题。IE8默认启用的散偶合IE特性导致VSDebugger无法准确附加到进程,通过修改注册表中的TabProcGrowth值为0可解决此问题。
167

被折叠的 条评论
为什么被折叠?



