强制IE浏览器或WebBrowser控件使用指定版本显示网页

最近为了抓取淘宝的成交数据,用C#的WebBrowser控件开发了一个简单的程序.
发现WebBrowser控件默认使用的版本是IE7的兼容模式.而淘宝的宝贝详细页居然对IE7的支持不是很好.
成交记录无法显示,而我本机安装的是IE10,那么有没有办法使我的WebBrowser控件的使用的IE版本高点呢?
查找到了MSDN的一篇文章,上面有详细的说明,简单翻译如下:

1,打开注册表
HKEY_LOCAL_MACHINE (or HKEY_CURRENT_USER)
    SOFTWARE
       Microsoft
          Internet Explorer
             Main
                FeatureControl
                   FEATURE_BROWSER_EMULATION
                      contoso.exe = (DWORD) 00000000
其中的"contoso.exe"为您的程序名字.即嵌入了WebBrowser控件的可执行程序的名字.
后面的数值"00000000"代表WebBrowser控件使用的IE的版本,值对应的IE版本如下图:
ie-emulation

如果您使用的是64位的操作系统,而你的程序是32位的,那么你则要在以下注册表中更改该值.

HKEY_LOCAL_MACHINE (or HKEY_CURRENT_USER)
SOFTWARE
Wow6432Note
Microsoft
Internet Explorer
Main
FeatureControl
FEATURE_BROWSER_EMULATION

contoso.exe = (DWORD) 00000000

 

360浏览器,傲游浏览器,淘宝浏览器等都可以用这种方式来操作.

 

注意: 我使用VS2010编译的时候,如果是Debug模式,那么我在注册表中更改的内容无效;如果使用了Release模式,则注册表的内容立即生效!

posted @ 2015-09-13 13:53  armyfai  阅读(467)  评论(0编辑  收藏  举报