webbrowser打开php提示不支持,修改webbrowser兼容性版本的代码

///

///修改注册表信息来兼容当前程序///

///

static void SetWebBrowserFeatures(intieVersion)

{//don't change the registry if running in-proc inside Visual Studio

if (LicenseManager.UsageMode !=LicenseUsageMode.Runtime)return;//获取程序及名称

var appName =System.IO.Path.GetFileName(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName);//得到浏览器的模式的值

UInt32 ieMode =GeoEmulationModee(ieVersion);var featureControlRegKey = @"HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\";//设置浏览器对应用程序(appName)以什么模式(ieMode)运行

Registry.SetValue(featureControlRegKey + "FEATURE_BROWSER_EMULATION",

appName, ieMode, RegistryValueKind.DWord);//enable the features which are "On" for the full Internet Explorer browser//不晓得设置有什么用

Registry.SetValue(featureControlRegKey + "FEATURE_ENABLE_CLIPCHILDREN_OPTIMIZATION",

appName,1, RegistryValueKind.DWord);//Registry.SetValue(featureControlRegKey + "FEATURE_AJAX_CONNECTIONEVENTS",//appName, 1, RegistryValueKind.DWord);//Registry.SetValue(featureControlRegKey + "FEATURE_GPU_RENDERING",//appName, 1, RegistryValueKind.DWord);//Registry.SetValue(featureControlRegKey + "FEATURE_WEBOC_DOCUMENT_ZOOM",//appName, 1, RegistryValueKind.DWord);//Registry.SetValue(featureControlRegKey + "FEATURE_NINPUT_LEGACYMODE",//appName, 0, RegistryValueKind.DWord);

}///

///获取浏览器的版本///

///

static intGetBrowserVersion()

{int browserVersion = 0;using (var ieKey = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer",

RegistryKeyPermissionCheck.ReadSubTree,

System.Security.AccessControl.RegistryRights.QueryValues))

{var version = ieKey.GetValue("svcVersion");if (null ==version)

{

version= ieKey.GetValue("Version");if (null ==version)throw new ApplicationException("Microsoft Internet Explorer is required!");

}int.TryParse(version.ToString().Split('.')[0], outbrowserVersion);

}//如果小于7

if (browserVersion < 7)

{throw new ApplicationException("不支持的浏览器版本!");

}returnbrowserVersion;

}///

///通过版本得到浏览器模式的值///

///

///

static UInt32 GeoEmulationModee(intbrowserVersion)

{

UInt32 mode= 11000; //Internet Explorer 11. Webpages containing standards-based !DOCTYPE directives are displayed in IE11 Standards mode.

switch(browserVersion)

{case 7:

mode= 7000; //Webpages containing standards-based !DOCTYPE directives are displayed in IE7 Standards mode.

break;case 8:

mode= 8000; //Webpages containing standards-based !DOCTYPE directives are displayed in IE8 mode.

break;case 9:

mode= 9000; //Internet Explorer 9. Webpages containing standards-based !DOCTYPE directives are displayed in IE9 mode.

break;case 10:

mode= 10000; //Internet Explorer 10.

break;case 11:

mode= 11000; //Internet Explorer 11

break;

}returnmode;

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值