放宽本地swf访问本地文件的Flash安全性

时间:2010-12-29 21:15:44

标签: c++ flash security actionscript chromium

这是我的情况 - 我有一个用C ++和DirectX编写的3D引擎。它使用Awesomium用于GUI窗口。

这允许我使用HTML和Javascript作为GUI,然后在3D环境中渲染它。 Awesomium包装Chromium浏览器以呈现HMTL。一切正常,包括SWF播放。

当我尝试使用Javascript(Awesomium允许我从我的C ++应用程序中调用Javascript)和Actionscripts ExternalInterface与SWF电影进行通信时,我的问题出现了。我得到了可怕的安全错误。通过向SWF文件添加各种语句并将SWF文件的路径添加到Flash播放器全局安全设置列表,它可以正常工作。

现在我不能指望我的最终用户都相应地修改他们的Flash播放器Global Security,所以我希望有一个解决方法。

我有一个本地应用程序,调用一个加载本地swf文件的本地html文件。我的本地应用程序正在与本地SWF文件通信,在本地错误。没有网络交易。

那为什么要沙盒?我不能告诉swf电影信任特定的发件人,我的应用程序?顺便说一句,我在flash 8 / AS2上。

感谢您的帮助

西蒙

1 个答案:

答案 0 :(得分:0)

我不确定这些设置是否适用于您的情况,或者您已经使用过它们,但您可以采取两项措施来“放松”ActionScript和JavaScript之间的通信安全性:

在ActionScript中:System.security.allowDomain("*")

在HTML中的swf的<object>和/或<embed>标记中,将allowScriptAccess参数设置为“始终”。