C# winform 設置WebBowser 內核版本
阿新 • • 發佈:2019-01-18
software directive body 模式 row com http value nbsp
一種是在網頁頭部 用 <
meta
http-equiv="X-UA-Compatible" content="IE=edge"> 使用當前瀏覽器最新版本
另外一種是修改註冊表 強制某個APP 用IE某個版本,下載是這個情況的辦法:
需要修改註冊表:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION
或者
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\MAIN\FeatureControl\FEATURE_BROWSER_EMULATION
void setIEVersion() { string BROWSER_EMULATION_KEY = @"Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_BROWSER_EMULATION"; // app.exe and app.vshost.exe String appname = Process.GetCurrentProcess().ProcessName + ".exe"; // Webpages are displayed in IE9 Standards mode, regardless of the !DOCTYPE directive. const int browserEmulationMode = 10001;//Internet Explorer 10。網頁以IE 10的標準模式展現,頁面!DOCTYPE無效 RegistryKey browserEmulationKey = Registry.CurrentUser.OpenSubKey(BROWSER_EMULATION_KEY, RegistryKeyPermissionCheck.ReadWriteSubTree) ?? Registry.CurrentUser.CreateSubKey(BROWSER_EMULATION_KEY); if (browserEmulationKey != null) { browserEmulationKey.SetValue(appname, browserEmulationMode, RegistryValueKind.DWord); browserEmulationKey.Close(); } }
值 | 說明 |
10001 (0x2711) | Internet Explorer 10。網頁以IE 10的標準模式展現,頁面!DOCTYPE無效 |
10000 (0x02710) | Internet Explorer 10。在IE 10標準模式中按照網頁上!DOCTYPE指令來顯示網頁。Internet Explorer 10 默認值。 |
9999 (0x270F) | Windows Internet Explorer 9. 強制IE9顯示,忽略!DOCTYPE指令 |
9000 (0x2328) | Internet Explorer 9. Internet Explorer 9默認值,在IE9標準模式中按照網頁上!DOCTYPE指令來顯示網頁。 |
8888 (0x22B8) | Internet Explorer 8,強制IE8標準模式顯示,忽略!DOCTYPE指令 |
8000 (0x1F40) | Internet Explorer 8默認設置,在IE8標準模式中按照網頁上!DOCTYPE指令展示網頁 |
7000 (0x1B58) | 使用WebBrowser Control控件的應用程序所使用的默認值,在IE7標準模式中按照網頁上!DOCTYPE指令來展示網頁。 |
註:
1. 準模式指的是瀏覽器模式,而!DOCTYPE控制的是文檔模式。
2. 應用程序中包含的WebBrowser Control控件時,默認WebBrowser使用的是IE7,這是個很重要的知識點。
好了,到此應該對於IE運行於指定版本的方法已經介紹完畢,同時自己程序中如何設置的方法也有了明確方向,接下來的事情就是——用起來吧。
C# winform 設置WebBowser 內核版本