C#webBrowser脚本错误

问题描述 投票:0回答:2

尝试使用webBrowser.Navigate("https://home.nest.com/")加载页面时,我一直收到脚本错误。它会从我的普通互联网浏览器中拉出来,但不会在我的程序中。

谁能指出我正确的方向?

Script Error

c# webbrowser-control
2个回答
4
投票

即使在使用版本11时,脚本错误也始终在集成的Internet Explorer WebBrowser控件中发生。现代网站严重依赖于大量的Javascript文件和动态呈现。您可以通过在常规浏览器中观看该页面加载来查看。控件有时无法削减它。

您可能想尝试一些替代浏览器控件。不能保证它可以与它们中的任何一个一起使用,但至少它是值得尝试的。

  • Awesomium:最初基于Chromium。我不知道他们是否仍然整合了Chromium的变化,或者他们是否已朝着自己的方向前进。它可以免费供个人使用以及不到10万美元的商业制作。
  • DotNetBrowser:将基于Chromium的WPF / WinForms组件嵌入到.NET应用程序中,以显示使用HTML5,CSS3,JavaScript,Silverlight等构建的现代网页。
  • geckofx:一个用于在.NET应用程序中嵌入Mozilla Gecko(Firefox)的开源组件。
  • Xilium.CefGlue:Marshall A. Greenblatt对Chromium Embedded Framework(CEF)的.NET / Mono绑定。
  • BrowseEmAll:BrowseEmAll.Cef(Chrome),BrowseEmAll.Gecko(Firefox),BrowseEmAll Core API(Chrome,Firefox,IE - COMMERCIAL)

可能还有其他人,但如果您想要追求这条路线,这应该可以让您了解一些更受欢迎的活跃项目。


0
投票

您应该将程序名称添加到HKEY_LOCAL_MACHINE \ SOFTWARE \ WOW6432Node \ Microsoft \ Internet Explorer \ Main \ FeatureControl \ FEATURE_BROWSER_EMULATION寄存器中,以使用与普通Internet浏览器相同的最新功能。

对我来说,值8000(0x1F40) - IE8模式可以解决很多脚本错误问题。

参考:

Use latest version of Internet Explorer in the webbrowser control


0
投票

作为this link回答:

你必须只添加这一行:

webBrowser.ScriptErrorsSuppressed = true;
© www.soinside.com 2019 - 2024. All rights reserved.