我在尝试使用vs2010和IE8进行调试时遇到了很大困难,尽管我认为这个问题更具IE8特异性。 在10次启动调试会话9次时,我将遇到以下问题。 IE选项卡说连接.. - 然后在等待5秒后,我将在VS中收到错误,说明找不到元素。 即使我单击确定以消除错误,IE窗口仍显示连接... 然后我将不得不杀死IE进程才能关闭IE以重试。 但有时我很幸运,它开始了。但整个事情是如此随机我不知道从哪里开始。我注意到的一件事是,即使只有一个窗口打开,我仍然会启动2个IE进程。其中一个占地面积很小,为100k,我认为它是某种帮手。
我正在使用内置WebDev服务器的静态端口。
如果有人有类似的问题,请告诉我你是如何解决的。它让我疯了! 感谢
答案 0 :(得分:2)
这听起来像是一个恢复的标签问题。转到互联网选项(ALT,T,O),转到“高级”标签,然后转到“浏览”部分和 取消选中“启用自动崩溃恢复”框。
您可能还想尝试将“localhost”添加为受信任的站点或(更糟糕的是)关闭“安全”选项卡中所有区域的“保护模式”(至少用于调试) )。
如果这不能解决问题,则可能是无法访问的端口。
在命令提示符下关闭所有软件防火墙 检查 netstat -a ,以确保必要的端口正在侦听。如果它确实将端口列为侦听,那么我唯一能想到的就是%systemroot%\ system32 \ drivers \ etc \目录下的hosts文件。将“127.0.0.1 localhost”设置为取消注释。
如果端口未列为侦听端口,则表明存在VS或服务问题。 This VS 2005 page should cover any related causes
答案 1 :(得分:1)
我采取了不同的方法。我将始终启动该应用程序,然后使用VS来解决问题。通常,这些步骤的工作方式如下:
无论如何,使用VS调试IE一直是个冒险的事情。 IE8的内置调试器通常可以完成任务。
使用此方法的另一个好处是,调试复杂的Web应用程序更快,因为您在重建站点时通常可以将Web应用程序保持在附近的问题点。
答案 2 :(得分:1)
我将为您提供有关多个正在运行的IE进程的线索:如果您启动IE8,您将获得一个主机进程和一个工作进程。查看VS中“附加进程”窗口中的进程列表时,主机将显示页面标题,而工作程序将没有标题。您想要附加到工作进程(没有标题的进程)。这可能会造成混淆,因此通常在调试时避免使用多个选项卡,因此您始终需要运行两个进程。
连接调试器时,IE标签是否仅以“正在连接...”停止?您没有说过任何可能有效的断点,如果这可能导致流程无法继续。
答案 3 :(得分:1)
您是否查看过Visual Studio中的堆栈跟踪以查看Javascript中的失败?找不到什么元素,它来自哪里?有什么期待?
过去我遇到过类似的问题,有时可能只是糟糕的javascript结果。使用调试器中的堆栈跟踪选项卡查看哪个元素发生故障。如果您能够将元素腐蚀到DOM中的对象或更好的代码,您可以缩小问题的范围。
答案 4 :(得分:0)
我在Chrome中调试了这个。用于调试JavaScript的内置开发人员工具非常棒。
答案 5 :(得分:0)
这可能是IE8的LCIE(松散耦合的Internet Explorer)流程模型的问题。当您打开新的浏览器选项卡时,IE8引入了(经过深思熟虑)运行新IE进程的想法。你从任务管理器中的两个iexplore.exe实例开始,这些实例迅速增加到8,12 12个进程等,每个进程都占用了大量的内存和资源。 VS2010非常糟糕地处理LCIE,存在各种各样的问题。最佳做法是禁用LCIE:
即使这不能解决您的问题,也会解决各种其他问题。 TBH我不知道如何在不禁用LSIE的情况下调试VS2010 + IE。