如何捆绑特定版本的浏览器控件?
我想知道是否有一种方法可以将特定 IE 版本的 dll 与我的应用程序捆绑在一起,以便在托管 Web 浏览器控件时获得相同的结果。
例如,我想要一种捆绑 IE8 网页浏览器控件的方法,它将帮助我避免用户不使用 IE 的计算机上出现问题,并且自 IE6 或 IE7 以来他还没有升级过它,因此我需要投入更多的精力来确保我在网页浏览器控件中编写的 html/scripts/css 在所有 IE 版本上都能正常工作。
据我所知,webbrowser控件由mshtml.dll和shdocw.dll组成,但我不知道如何绑定到它们而不与系统上已安装的内容发生冲突。
如果没有,我想我会选择 WebKit。
I'm wondering if there is a way to bundle specific IE version dlls with my application so I get same results when hosting webrowser control.
For examsple I'd like to have a way to bundle IE8 webrowser control, it will help me to avoid problems on computers where user is not using IE, and he hasn't upgraded it since IE6 or IE7, and because of that I need to invest much more effort to make sure, html/scripts/css I write in my webrowser control are working ok on all IE versions.
From what I know, webrowser control consists of mshtml.dll and shdocw.dll, but I don't know how to bind to them without conflicting with what is already installed on system.
If not, I guess I'll go with WebKit.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
不,事情没那么容易。 IE 浏览器与系统的联系如此紧密,以至于只能安装一个版本。
为了能够使用不同版本的 dll:s,您必须在加载 dll:s 时拦截系统本身。有一些应用程序可以执行此操作,以便您可以同时运行多个版本的 IE,但这仅部分有效,浏览器中仍有一些功能无法正常工作。
No, it's not as easy as that. The IE browser is so tightly tied into the system that there can only be one version of it installed.
To be able to use different versions of the dll:s, you would have to intercept the system itself when it's loading the dll:s. There are some applications that does this so that you can run several versions of IE simultaneously, but this only works partially, there are still some features in the browser that doesn't work properly.