【发布时间】:2009-07-10 05:08:34
【问题描述】:
我正在使用 VWD Express 2008 开发 WPF 浏览器应用程序。当我开始调试时,它会在我的默认浏览器 Opera 中启动 XBAP。显然,XBAPs 在 Opera 中是行不通的,所以我必须反复右键单击该文档才能在 IE 中打开。
有什么方法可以更改 PresentationHost.exe 的设置,使其始终使用 IE 打开?也许是注册表设置?
【问题讨论】:
我正在使用 VWD Express 2008 开发 WPF 浏览器应用程序。当我开始调试时,它会在我的默认浏览器 Opera 中启动 XBAP。显然,XBAPs 在 Opera 中是行不通的,所以我必须反复右键单击该文档才能在 IE 中打开。
有什么方法可以更改 PresentationHost.exe 的设置,使其始终使用 IE 打开?也许是注册表设置?
【问题讨论】:
将外部程序设置为 Internet Explorer 路径,将命令行参数设置为 xbap 文件的路径,用引号括起来,如下所示:
【讨论】:
一种简单易行的方法是将 *.htm 或 *.html(不记得确切,都尝试一下)文件与 IE 相关联,它适用于 XBAP。
更新:
上述解决方案适用于“启动外部程序选项”。
对于“使用 URL 启动浏览器”选项,您实际上可以在 Visual Studio 中设置默认浏览器。我没有找到如何通过Tools -> Options来设置它,但是你可以通过以下步骤来实现它:
【讨论】:
为 WPF 设置默认浏览器为 IE:
Project preporties -> 调试选项卡属性...
【讨论】:
XBAP 在 Opera 中可以工作(我可以截屏来证明这一点)。考虑更新您的 Opera 版本和/或 .NET(您有 SP1 吗?)。
【讨论】:
查看 msdn 论坛上的 this 帖子。
我发现的解决方法可以,但要求 Firefox 是您的默认浏览器:
在 Firefox 中,打开菜单工具/选项/下载。
然后单击“查看和编辑操作”并将 XBAP 应用程序的操作更改为 Windows 演示主机。
现在,当我调试时,Firefox 会收到 XBAP,但随后它会自动将其传递给运行到 IE 中的演示主机。有点麻烦,因为每次在 Firefox 中打开一个新选项卡,但没关系。它也适用于 F5,因此您可以调试。
或者,您可以启动 IE,导航到 XBAP URL,然后手动将调试器附加到 PresentationHost 进程(虽然不是 IE)。
【讨论】: