Visual studio 2008 当我点击";时,如何阻止Visual Studio两次启动IE8;“不调试启动”;(Ctrl-F5)?

Visual studio 2008 当我点击";时,如何阻止Visual Studio两次启动IE8;“不调试启动”;(Ctrl-F5)?,visual-studio-2008,internet-explorer-8,Visual Studio 2008,Internet Explorer 8,我使用Visual Studio 2008主要用于web开发,自从我在工作PC上升级到IE8以来,似乎出现了一种恼人的行为: 当我为网站或web应用程序项目设置起始页,然后单击工具栏中的“开始而不调试”图标或使用键盘快捷键CTRL-F5时,Visual Studio将继续启动IE8(我的默认web浏览器),但会启动两次: IE8打开的第一个新窗口有一个标签,上面写着“连接…”,并加载about:空白页面。然后,另一个新的IE8窗口也会打开,其中有一个选项卡,上面写着“连接…”,并加载我在项目中设

我使用Visual Studio 2008主要用于web开发,自从我在工作PC上升级到IE8以来,似乎出现了一种恼人的行为:

当我为网站或web应用程序项目设置起始页,然后单击工具栏中的“开始而不调试”图标或使用键盘快捷键CTRL-F5时,Visual Studio将继续启动IE8(我的默认web浏览器),但会启动两次:

IE8打开的第一个新窗口有一个标签,上面写着“连接…”,并加载about:空白页面。然后,另一个新的IE8窗口也会打开,其中有一个选项卡,上面写着“连接…”,并加载我在项目中设置的起始页

这很烦人。有没有人知道是什么导致了这一问题,以及如何解决

在有人建议之前,我已经用Firefox作为我的默认浏览器来解决这个问题有一段时间了;-)但是,我想在IE8中使用VisualStudio的javascript调试功能,所以现在我希望IE8再次成为我的默认设置


其他信息:

使用Process Explorer,我可以看到两个iexplore.exe进程都是由同一个父进程启动的,即Visual Studio 2008的devenv.exe

第一个iexplore.exe进程具有以下命令行:

“C:\Program Files\Internet Explorer\IEXPLORE.EXE”-noframemerging-调试关于:空白

几秒钟后启动的第二个iexplore.exe进程具有以下命令行:

“C:\Program Files\Internet Explorer\IEXPLORE.EXE”-noframemerging-挂起-调试

然后,我还尝试了进程监视器。在日志中,我可以在“C:\Program Files\Internet Explorer\IEXPLORE.exe”上的devenv.exe中看到两个不同的“进程创建”事件。。。相隔几秒钟

有趣的是,如果我在VisualStudio2005(而不是2008)中尝试完全相同的事情(启动时不进行调试),我只看到一个进程 使用以下命令行创建:

“C:\Program Files\Internet Explorer\IEXPLORE.EXE”关于:空白

在2005年,从视觉上看,似乎首先加载了about:blank,然后URL由与about:blank相同的浏览器进程加载到相同的选项卡中,并覆盖它

我注意到的另一个不同点是:在VS2005进程监视器日志中,它显示了对文件“C:\WINDOWS\system32\ieframe.dll”的大量读取,但在VS2008进程监视器日志中没有显示相同的内容。(ieframe.dll包含一些与Internet Explorer相关的COM对象的类型库。)因此,VS2005启动和控制IE的方式可能与VS2008不同


最后一个,这很奇怪:在VS2008中,如果我单击“启动而不调试”,我会得到两个窗口。但是,如果在解决方案资源管理器中,我右键单击我的网站项目或其中的任何HTML文件并选择“在浏览器中查看”,我只会看到一个窗口。为什么“不调试启动”和“在浏览器中查看”之间有区别。。。很奇怪。如果您使用SysInternal的进程监视器,您可以看到第二个IE窗口是由第一个IE窗口启动的,还是Visual Studio同时拥有这两个IE窗口?这可能有助于找出问题所在


除此之外,下一步要尝试的是禁用大多数浏览器插件,看看这是否会有所不同。最后,尝试使用工具/Internet选项/安全性为Intranet和受信任站点区域启用保护模式。

这可能与IE的“保护模式”有关。试着把它关掉。您可以双击状态栏中的“受保护模式”文本来执行此操作


我也有同样的问题,这太烦人了

听起来好像VisualStudio正在利用旧的行为

具体来说,似乎VisualStudio正在加载:blank打开浏览器,然后通过另一个对可执行文件的调用加载页面

尝试以下更改: 开放互联网财产 单击选项卡设置 在底部附近应该有一个部分,上面写着“打开中其他程序的链接:”
在该部分中选择当前选项卡或窗口

感谢您将我指向附加组件。这种行为确实很烦人。在我的计算机上,只有在禁用Windows Live工具栏加载项时,它才会消失。启用相同的加载项,问题将再次出现

我们通过在Windows XP兼容模式(快捷方式设置)下启动VS 2005成功地解决了这个问题。

对于重复的答案,很抱歉,但是禁用Live toolbar对我来说确实非常有用,我想从sjerp获得答案,但由于我缺乏声誉,我认为重复这个答案是值得的。

在使用IE8和Microsoft Visual Web Developer 2008 Express Edition时禁用Live toolbar
如果您得到两个浏览器实例,那么它确实是正确的

看起来我是唯一一个遇到这个问题的人:-/Three's company。是时候开始赏金了:-)我喜欢这个问题,因为我将来可能会遇到这个问题。“-noframemerging”开关的一些信息在这里:我遇到了这个问题,但是打开的第一个窗口是我的默认起始页,第二个窗口也是一样(尽管在关闭第一个窗口之前它不会加载)。我不认为这是我的错。请看看我的问题。我将非常感谢任何帮助!谢谢本周晚些时候我回到办公室时,我会尝试这些建议,这正是我遇到问题的地方。我在上面添加了有关iexplore.exe进程所有权的更多信息,以及我在Process Monitor中发现的内容。另外,我不能更改工具/互联网选项/安全。。。“某些设置由系统管理员管理。”下一步将尝试禁用加载项。确定,因此:我禁用了所有加载项。一切。VS2008随后只启动了一个IE.Yippee实例!所以 "C:\Program Files\Internet Explorer\IEXPLORE.EXE" -noframemerging -debug about:blank "C:\Program Files\Internet Explorer\IEXPLORE.EXE" -noframemerging -suspended -debug http://localhost/test/index.html "C:\Program Files\Internet Explorer\IEXPLORE.EXE" about:blank