我正在VB.Net中编写桌面应用程序,并且我想包含一个Web浏览器控件以自动执行用户可能必须在浏览器。我必须呈现网页,因此我不想使用网络请求直接拨打电话。当我发布应用程序时,我是否必须关心用户在其计算机上安装哪个版本的Internet Explorer?他们的任何第三方,免费提供,稳定的网页浏览器控件可用于VB.Net,人们正在使用?在VB.Net桌面应用程序中包含Web浏览器控件的建议
回答
你总是可以忽略整个IE问题,使用嵌入在您的应用程序Mozilla的引擎:
geckofx
“为 嵌入Mozilla的Gecko的(火狐)的一个开放源代码组件 .NET应用程序。“
几个版本的Visual Studio支持Web浏览器控件。这里是一篇关于如何实现其中的文章。
http://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser.aspx
Web浏览器控件将与不同版本的Internet Explorer的工作,但将仅限于由该版本的Internet Explorer支持的功能。
本文基于Visual Studio 2008,但在文章的右上角有关于如何使用Web浏览器控件的链接,以及早期版本的Visual Studio。
感谢您的链接。我最担心的是将这个应用发布到500个用户,并且无法控制他们拥有哪个版本的IE。 – ajl
如果嵌入在应用程序中WebBrowser控件,你真正做的是嵌入的COM对象。在运行时,您的应用程序将CoCreateInstance()Webbrowser控件,它将从当前在机器上的SHDOCVW.DLL或IEFRAME.DLL版本加载它。因此,用简单的英语,您将获得IE6,IE7或IE8 Webbrowser控件,具体取决于机器上安装的内容。
然而,实际的差异很小,因为接口很久以前就已经发布了,并且没有改变这些版本。无论如何,某些接口(如IOleCommandTarget)支持的不同命令的差异被管理层抽象掉了,因此您不必担心这一点。最大的区别是呈现差异,因为IE6和IE8之间的CSS一致性存在巨大的差异。您将不得不使用Microsoft's app compat VHDs来测试各种版本。
当我参与IE团队应用程序兼容性时,Webbrowser控件是一笔巨大的交易;该团队非常努力地确保这种行为不会因为这种情况而退化,即定制的企业VB应用程序托管WebOC。
虽然如果您决定使用开源解决方案与您的应用程序一起发布,我可以建议WebKit吗?它的布局引擎非常好,源代码维护得很好并且易于阅读,但是您必须编写自己的托管托管层。 Gecko代码很难读取和调试。
- 1. 使用桌面应用程序控制Web浏览器
- 2. VB.NET Web浏览器控件
- 3. 要运行VB.Net桌面应用程序的Web浏览器作为Web应用程序
- 4. 如何打开Web浏览器内的桌面应用程序
- 5. 在ASP.NET应用程序中使用Web浏览器控件
- 6. 结合浏览器应用程序和桌面应用程序
- 7. Silverlight浏览器应用程序到桌面应用程序
- 8. 在浏览器中开发类似桌面的Web应用程序的框架
- 9. 在桌面浏览器中显示移动应用程序
- 10. C#/ VB.Net Web浏览器控件替换
- 11. 在Web浏览器中运行WPF浏览器应用程序
- 12. SL5浏览器外应用程序,控制包含窗口
- 13. 使Web浏览器控件与VB.NET程序通信
- 14. 将文件从浏览器拖放到桌面/应用程序
- 15. 跟踪桌面应用程序中的浏览器指标
- 16. FatalExecutionEngineError包含web浏览器
- 17. Chrome浏览器内的web浏览器中的GeoLocation打包应用程序
- 18. Web浏览器控件挂起我的应用程序
- 19. 将桌面应用程序转换为服务器+浏览器应用程序
- 20. 是否有可能在java中创建一个既包含Web应用程序组件又包含桌面应用程序组件的程序
- 21. 从Web应用程序中的Web浏览器控件在Winforms应用程序中读取对象
- 22. 从浏览器到桌面应用程序的信号
- 23. 桌面应用程序和浏览器之间的通信
- 24. 来自网络浏览器的桌面应用程序
- 25. 本地桌面应用程序的浏览器GUI?
- 26. 跨浏览器/桌面应用程序的术语?
- 27. 跨平台桌面应用程序的嵌入式Web浏览器引擎?
- 28. 如何在WinForms应用程序内测试Web浏览器控件的Web UI?
- 29. Web浏览器与桌面交互?
- 30. 将WPF浏览器应用程序转换为WPF桌面应用程序
看起来不错。任何人都知道使用geckofx的VB.Net项目? – ajl
但它的.net - 没关系(好吧,几乎总是!)反射器是你的朋友... –
这不是说您现在负责为用户推出针对Mozilla引擎的修补程序吗?安全修补程序等? – MarkJ