2011-02-10 127 views
0

我觉得很困惑的是IE7允许的JavaScript默认情况下,Internet区域,但禁止它为本地HTML文件的[我的电脑区域(互联网现在比本地更加安全计算机?),但无论如何...启用JavaScript在VBA WebBrowser控件本地文件

我有一个应用程序在VBA中使用WebBrowser控件打开一个本地HTML文件(比如说:file:/// C:\ somefile.html),它有Javascript。我希望这个Javascript被执行。有什么办法(从VBA代码)强制浏览器允许这个Javascript? (考虑到它在默认情况下禁用的考虑)

这将是理想的,如果我就不必依靠任何种类的注册表编辑,或让应用程序的用户更改他们的Internet Explorer设置。 我也尝试设置一个localhost web服务器并从那里提供文件。很明显,IE浏览器认为这是Internet区域,所以完美的工作,但如果我不必尝试从VBA编码Web服务器,我希望它。

系统是Windows XP中使用IE7。

谢谢

回答

0

好吧,可能不是一个“真正的”解决方案,但足以满足我的需求。 人们可以使用WebBrowser.Document.parentWindow.execScript功能注入Javascript脚本到页面中。 我想这是可能实现类似Prototype's evalScripts function这里的东西,使其有效地评估任何网页上的脚本。可能需要仔细检查脚本是否已被可能不同的安全设置所允许。 我不知道它如何影响链接的脚本文件。

(我自己的应用程序,我控制的HTML文件,所以我只是提取所有的JavaScript到一个单独的文件,并使用上述方法执行它)。