编程语言
首页 > 编程语言> > c# – MSHTML.dll – 如何确保在整个安装机器上使用IE渲染引擎的一致版本

c# – MSHTML.dll – 如何确保在整个安装机器上使用IE渲染引擎的一致版本

作者:互联网

我对有关重新分发MSHTML.dll的内容有点困惑.

我的应用程序(这是一个消费者数据提取工具)在WebForms应用程序中使用WebBrowserControl(最终可能是WPF),并依赖于MSHTML.dll.

据我了解,MSHTML.dll的存在是为了向.NET提供基于客户端计算机上当前安装的IE版本存在的COM组件的包装器.

非常重要的是,WebBrowser控件中呈现的网页的DOM html在所有安装中都是一致的,并且是每个客户端与之通信的Web服务器.我担心的是,如果客户端机器安装了不同版本的IE,可能是IE 6 – IE 9,那么DOM html可能因机器而异.

比如说服务器安装了IE9,客户端机器有IE6,我认为HTML页面的DOM视图可能不同.

有人可以澄清一下

a)这是一个有效的问题,这是否符合我的预期.

b)我可以通过重新分发组件来控制正在使用的渲染引擎版本吗?

谢谢你的帮助.

解决方法:

免责声明:我不是这方面的专家,我最近一直在处理类似的问题.

a) is this a valid concern, does this work as I am expecting.

是的,WebBrowser控件取决于安装的Internet Explorer版本.

b) can I control the rendering engine version in use, maybe by redistributing components?

查看控件的Version property,这个:
http://blogs.msdn.com/b/ie/archive/2009/03/10/more-ie8-extensibility-improvements.aspx
您可能是IE6及更早版本的SOL,但如果您的应用程序检查已安装的版本并在适当的时候更新注册表中的密钥,您应该能够控制它.

标签:c,net,webbrowser-control,mshtml
来源: https://codeday.me/bug/20190710/1418912.html