我已经读过某个地方,MS visual studio中的webbrowser控件使用与我电脑上安装的IE相同的引擎。尽管我发现这不正确。为了证明我的假设,我使用了各种在线浏览器检测站点。我在这里展示结果: (1)我的电脑上安装的IE(64位和32位): 浏览器信息:。 浏览器:Microsoft Internet Explorer 浏览器版本:9.0 用户代理字符串:Mozilla / 5.0(兼容; MSIE 9.0; Windows NT 6.1; WOW64; Trident / 5.0)
(2)webbrowser控件(C#): 浏览器信息: 浏览器:Microsoft Internet Explorer 浏览器版本:7.0 用户代理字符串:Mozilla / 4.0(兼容; MSIE 7.0; Windows NT 6.1; WOW64; Trident / 5.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)
我开始搜索它,因为每当我尝试访问特定站点时,我都会遇到与webbrowser控件的兼容性问题(尽管有警告,它仍能正常工作)。 我使用gecko 12来模拟firefox但是网站检测到我没有使用firefox并且我再次收到警告消息... 所以问题是:我如何“欺骗”和旁路检测,以便每次点击后我都不会收到警告信息?我正在寻找一种程序化的方法。
答案 0 :(得分:1)
似乎没有简单的方法来完成编程。这都在注册表中。 我不明白为什么...... 无论如何,答案是here。 webbrowser控件默认使用兼容模式。即使IE不使用兼容模式,控件也会。
答案 1 :(得分:0)
Webbrowser控件使用安装在计算机上的IE。默认情况下,它在IE 7兼容模式下运行。 要设置兼容性模式,您需要在HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_BROWSER_EMULATION中列出具有所需兼容性模式的应用程序。