我目前遇到一些使用System.Windows.Forms.WebBrowser构建的门户问题,他们没有像IE中那样正确加载内容。
我已经使用FEATURE_BROWSER_EMULATION将仿真设置为使用IE11,我不明白为什么它不像安装的IE11那样。
显示“浏览器中的脚本访问被拒绝”或者根本没有加载内容,说我需要升级浏览器。
答案 0 :(得分:0)
也许您的代码存在问题。查看Internet Feature Controls (B..C)
值11001 - 强制网页以IE11边缘模式显示,而不管!DOCTYPE指令。您需要在目标系统上安装IE11。
private static void WebBrowserVersionEmulation()
{
const 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";
//
// Internet Explorer 11. Webpages are displayed in IE11 edge mode, regardless of the !DOCTYPE directive.
const int browserEmulationMode = 11001;
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();
}
}