webbrowser如何默认进去edge浏览器 怎么进去edge浏览器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webbrowser如何默认进去edge浏览器 怎么进去edge浏览器相关的知识,希望对你有一定的参考价值。

参考技术A 1、在开始菜单内输入“regedit.exe”,进入注册表编辑器。

2、找到注册表项:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION。

3、在右侧空白区域内单击鼠标右键,点击【新建】→【DWORD(32-位)值】。

4、新建的项取名为TestWebBrowser.exe,编辑值时,选择基数“十进制”,填写数值数据,这里填写8888。

5、这个时候再进入Debug目录下生成好的TestWebBrowser,可以看到登录的内核版本变成IE8了。。需要注意的是,在VS内以调试的方法进入程序,打开的程序实际上是TestWebBrowser.vshost.exe,并不能看到效果,必须要打开Debug目录下的TestWebBrowser.exe,才能发现内核版本的改变。之前WebBrowser使用IE7内核的原因,就是.NET中的WebBrowser控件默认使用了IE7兼容性模式来浏览网页。

winform webbrowser如何强制使用ie11内核?

webkit.net ,cefsharp,openwebkit.net等这些基于谷歌或者基于firfox内核的浏览器有个共同点,就是必须指定winform为x86的才能使用,

而且使用过程中也是各种坑需要去填。

webbrowser不好的地方是默认使用ie5内核来加载网页,不得不吐槽下微软真是奇葩,ie已经退出了历史舞台,但是winform里面的webbrowser控件使用的还是ie内核,

项目有个需求是,winform程序,必须是x64的,x86经常内存溢出,于是,那些基于谷歌内核的都被pass掉了。

winform里面嵌套的网站之前都是基于谷歌内核来开发的,在ie11里面虽然还有一些小瑕疵,但是毕竟可以使用,

于是考虑如何让winform x64调用IE11的内核。

代码如下:

RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION", true);
if (key != null)
{
key.SetValue("XXX.exe", 11001, RegistryValueKind.DWord);
key.SetValue("XXX.vshost.exe", 11001, RegistryValueKind.DWord);//调试运行需要加上,否则不起作用
}

key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION", true);
if (key != null)
{
key.SetValue("XXX.exe", 11001, RegistryValueKind.DWord);
key.SetValue("XXX.vshost.exe", 11001, RegistryValueKind.DWord);//调试运行需要加上,否则不起作用
}

 

IE各版本的值如下:

  • 11001 (0x2EDF) Internet Explorer 11. Webpages are displayed in IE11 Standards mode, regardless of the !DOCTYPE directive

  • 11000 (0x2AF8) :Internet Explorer 11. Webpages containing standards-based !DOCTYPE directives are displayed in IE9 mode

  • 10000 (0x2710) :Internet Explorer 10. Webpages containing standards-based !DOCTYPE directives are displayed in IE9 mode.

  • 10001 (0x2AF7) :Internet Explorer 10. Webpages are displayed in IE10 Standards mode, regardless of the !DOCTYPE directive.

  • 9999 (0x270F) :Internet Explorer 9. Webpages are displayed in IE9 Standards mode, regardless of the !DOCTYPE directive.

  • 9000 (0x2328) :Internet Explorer 9. Webpages containing standards-based !DOCTYPE directives are displayed in IE9 mode.

  • 8888 (0x22B8) :Webpages are displayed in IE8 Standards mode, regardless of the !DOCTYPE directive.

  • 8000 (0x1F40) :Webpages containing standards-based !DOCTYPE directives are displayed in IE8 mode.

  • 7000 (0x1B58) :Webpages containing standards-based !DOCTYPE directives are displayed in IE7 Standards mode.











以上是关于webbrowser如何默认进去edge浏览器 怎么进去edge浏览器的主要内容,如果未能解决你的问题,请参考以下文章

如何让C#的WEBBROWSER内的链接点击后弹出默认浏览器,而不是IE。

关于在VB webbrowser中点击链接 新打开默认浏览器

C#中webbrowser怎么禁用默认调用的IE浏览器缩放功能

如何将“Edge/chrome 浏览器应用程序”设置为文件扩展名的默认应用程序

WPF WebBrowser - 在默认浏览器中打开链接

edge浏览器怎么设置默认主页