【问题标题】:How to prevent script error in C# webbrowser?如何防止 C# webbrowser 中的脚本错误?
【发布时间】:2012-08-05 20:06:20
【问题描述】:

我在加载一些网站时遇到脚本错误。

请帮助我如何防止 C# WebBrowser 中的脚本错误。

这是我的代码:

try
{
    webBrowser1.Navigate(textBox1.Text);
    while (webBrowser1.ReadyState != WebBrowserReadyState.Complete)
    {
        Application.DoEvents();
    }

    MessageBox.Show("Loaded");
}
catch(Exception)
{
    MessageBox.Show("failed");
}

【问题讨论】:

  • 我猜你不会分享脚本错误信息,是吗?
  • 这有点像雇用水管工而不告诉他泄漏了什么:p
  • @LittleBobbyTables 你的名字很棒。
  • @Wesley:- 想 +2 你的评论...
  • 脚本错误是:此页面上的脚本发生错误您要继续运行此页面上的脚本吗?

标签: javascript


【解决方案1】:

在你的代码中写下这个

 webBrowser1.ScriptErrorsSuppressed = true;

【讨论】:

  • 放在哪里?
【解决方案2】:

要禁用脚本错误弹出,您需要转到(在 Internet Explorer 中)工具->Internet 选项,转到高级选项卡,然后在浏览中选择禁用脚本调试(其他),但是,问题可能与加载在 WebBrowser 控件中的每个站点都以 IE7 兼容模式呈现这一事实有关,要解决此问题,您唯一能做的就是像这样的注册表黑客:WebBrowser control to use IE9

【讨论】:

    【解决方案3】:

    将您的注册表更改为 2af8,即 devenv.exe 的 IE 11 软件/Microsoft/Internet Explorer/main/featurecontrol/feature_Browser_emulation

    【讨论】:

      【解决方案4】:

      如果您使用 GUI(如在 Visual Studio 中),只需转到 Webbrowser 属性并设置“ScriptErrorsSuppressed”= true

      【讨论】:

        【解决方案5】:

        很容易看出这个错误是如何消除的。但是 Visual Studio 使用 Internet Explorer 和另一个 Web 浏览器编码是困难的。如果您查看版本,最后一个 Visual Studio 使用 IE 11 for WebBrowser 工具。

        对于每种编码之一,建议使用 C++ GUI: https://msdn.microsoft.com/en-us/library/60k1461a.aspx

        【讨论】:

        猜你喜欢
        • 2016-09-17
        • 2010-11-19
        • 2011-06-07
        • 1970-01-01
        • 1970-01-01
        • 2012-10-20
        • 2012-09-10
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多