WPF WebBrowser控件是否依赖于用户计算机上安装的IE版本,还是使用跨计算机保持一致的单独库?我读过它只能在IE7模式下呈现,但我想确保没有安装IE的用户或者出于某种原因仍然在IE6上的用户没有任何问题。WPF WebBrowser浏览器版本
7
A
回答
13
MSDN remarks for WebBrowser的指示它的主机切换IE ActiveX控件:
web浏览器控件内部实例化天然web浏览器ActiveX控件。
WebBrowser ActiveX控件更好地被称为Shdocvw.dll
。这反过来包装Mshtml.dll
,并可能其他DLL给你的环境。 One caveat of rehosting this control is its setting for Browser Emulation:
对于托管WebBrowser控件的应用程序,默认值为
7000
。要通过使用注册表来控制此功能的值,请将可执行文件的名称添加到以下设置中,并将值设置为与所需的设置相匹配。
0x7000
表示IE7兼容模式。因此,如果你想你的WPF应用程序中使用一些其他的方式来呈现,你需要更新注册表,为adapted from this example:
[HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION]
"MyApplication.exe" = dword:2328
0
我创建了一个WebBrowser控件一个WPF应用程序的机器上IE11,得到了该用户代理字符串:
user agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/7.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E; InfoPath.3; .NET CLR 1.1.4322)
我创建与IE10的机器上WebBrowser控件一个WPF应用程序,并得到了该用户代理字符串:
user agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/6.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)
Trident/7.0表示IE11,Trident/6.0表示IE10。 More about user-agent strings。
带有IE10的系统也使页面呈现与使用IE11的系统不同。我还在每个系统上使用独立的IE浏览器进行了验证。
我还没有在没有IE或系统运行IE6的系统上试用它,但似乎WebBrowser控件与当前安装在系统上的IE版本有关。
相关问题
- 1. WPF WebBrowser浏览本地PHP文件
- 2. 什么是Windows窗体中WebBrowser控件的浏览器版本
- 3. Silverlight在浏览器WebBrowser块
- 4. 浏览器版本检测
- 5. 浏览器的JavaScript版本
- 6. 浏览器版本jQuery中
- 7. Matlab浏览器版本
- 8. Flash版本跨浏览器
- 9. 基于浏览器版本
- 10. 浏览器版本测试
- 11. WPF浏览器InvokeScript
- 12. webBrowser浏览网址
- 13. 是Android浏览器的独特浏览器版本吗?
- 14. 跨浏览器测试工具,包括浏览器版本
- 15. 查找浏览器的SWT浏览器的类型/版本
- 16. SWT浏览器导航器版本
- 17. 网络浏览器控制版本
- 18. 浏览器缓存版本的Tampermonkey
- 19. 仅显示浏览器版本在Javascript
- 20. 强制浏览器嗅探Safari版本
- 21. 查找浏览器类型和版本?
- 22. grails中的浏览器版本检测
- 23. 对JavaScript版本的浏览器支持
- 24. jQuery的浏览器版本检测
- 25. 浏览器版本或错误检测
- 26. webdriver使用浏览器版本
- 27. 用户代理浏览器版本
- 28. Bootstrap 4浏览器支持版本
- 29. 浏览器版本重定向
- 30. 如何查看浏览器版本
另一个有用的资源是[本文来自Rick Strahl,因为他在使用他的Html Help Builder时遇到了这个问题](http://www.west-wind.com/weblog/posts/2011/May/21/网络浏览器 - 控制 - 指定最IE-版)。 – user7116
问题是,“WPF WebBrowser控件是否依赖于系统上安装的IE版本?”这个答案只是讨论了如何设置或覆盖IE7仿真。如果用户没有在他们的机器上安装IE或IE6,会发生什么? – ThePersonWithoutC