Winform webbrowser 指定IE版本

最近在做一个小工具,用winform内嵌webbrowser打开一个页面,但是我发现有些页面是无法打开的,但是用电脑自带的IE浏览器却又能打开。

于是我就开始在网上找原因,找了很久,都说的是修改注册表什么的,但是我修改了却还是没有效果,最后再谷歌上找到一个解决方案。

exename = winform的程序名称,11001 = IE的版本
 public static void EnsureBrowserEmulationEnabled(string exename = "AnonymousLetter.exe", bool uninstall = false)
        {
            try
            {
                using (
                    var rk = Registry.CurrentUser.OpenSubKey(
                        @"SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION", true)
                )
                {
                    if (!uninstall)
                    {
                        dynamic value = rk.GetValue(exename);
                        if (value == null)
                            rk.SetValue(exename, (uint)11001, RegistryValueKind.DWord);
                    }
                    else
                        rk.DeleteValue(exename);
                }
            }
            catch
            {
            }
        }

 

不得不感叹,找问题还是上谷歌,复杂罕见一点的问题百度是真的不行

posted @ 2022-04-16 20:56  HaoRudder  阅读(289)  评论(0)    收藏  举报