在WebBrowser控件中禁用脚本?

时间:2011-02-10 15:52:35

标签: vb6 webbrowser-control

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

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

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

有没有人知道可能出现的问题?

由于

1 个答案:

答案 0 :(得分:2)

我想我知道为什么会发生这种情况,这是因为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。这几乎肯定是你问题的原因。