在WebBrowser控件中禁用脚本?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在WebBrowser控件中禁用脚本?相关的知识,希望对你有一定的参考价值。

我有一个使用WebBrowser控件的VB6应用程序。它显示本地文件夹中的html页面(使用file:// URI方案)。其中一些页面包含嵌入的javascript代码。

这一切都适用于绝大多数用户,但有时我们会从页面中与JavaScript相关的所有问题的人那里获得报告。基本上,看起来他们在WebBrowser控件中禁用了脚本。

问题是:我甚至无法重现这个问题。我试图摆弄IE安全中的各种设置(Win XP Pro SP3上的IE8),禁用不同区域的各种脚本相关选项(顺便说一下,哪个区域包括本地文件系统?), - 我总是使用JavaScript在我的测试中运行良好。

有没有人知道可能出了什么问题?

谢谢

答案

我想我知道为什么会发生这种情况,这是因为WebBrowser控件呈现的IE版本大多数是IE 7.0,如果他们使用的是早于IE 7的浏览器,它将在IE 4.0下呈现(严重)。他们这样做是为了向后兼容。因此,如果您的某些用户拥有IE 6,他们的默认IE渲染引擎将是IE 4.0。当然,既然你可能正在使用IE 9,那么yors就是IE 7引擎。

您可以将引擎(如果这是您要执行的操作)更改为当前引擎(即:到用户系统上安装的当前版本的Internet Explorer)。

另外,我希望你在你的IE浏览器上访问http://whatsmyuseragent.com/,然后通过托管的WebBrowser控件;你会看到差异。

另外,如果可以的话,请问有问题的用户通过他们的托管WebBrowser控件转到http://whatsmyuseragent.com/,并记下结果,如果他们在IE-7之前运行,那么很可能他们的托管webbrowser控件将显示IE 4.0。这几乎可以肯定是你问题的原因。

以上是关于在WebBrowser控件中禁用脚本?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 webbrowser WPF 顶部打开用户控件作为弹出窗口

在 WebBrowser 控件中禁用 JavaScript 错误

如何禁用 .NET WebBrowser 控件中的缓存?

如何在 Webbrowser 控件中禁用“安全警报”窗口

如何禁用 WPF WebBrowser 控件的点击噪音?

MFC WebBrowser判断网页加载完成