我也提出问题

保留原著,并且问题被回答或审核通过时通知你:


Tag Archives: 安全沙箱

解决无法访问本地文件的问题,添加本地可信任目录(FlashPlayerTrust)

用记事本新建一个名为“*.cfg”的文件,写入 swf 文件所在目录路径,保存后复制到以下目录:
C:\WINDOWS\system32\Macromed\Flash\FlashPlayerTrust
swf 文件目录路径形如:E:\ApacheService\wwwroot\UMLer-local
- 作者:SWFAQ | http://swfaq.org

如何让不同域下的flash共享同一域flash的SharedObject

A 使用 B 的 SharedObject
A类:
public function A() // 构造函数
{
    loader = new Loader();
   loader.contentLoaderInfo.addEventListener(Event.INIT, ok);
   loader.load(new URLRequest(“http://swfaq.org/B/B.swf”));
   this.addChild(loader);
}
private function ok(event:Event):void
{
   var b:* = loader.content;
   ExternalInterface.call(“alert”, b.getBSO());
}
B类:
public function getBSO():*
{
   Security.allowDomain(“*”);
   so = SharedObject.getLocal(“B”);
   if (!so.data.map)
   {
      so.data.map = this.loaderInfo.url;
   }
   return so.data.map;
}
- 作者:SWFAQ | http://swfaq.org

如何允许其它域访问本域资源?

在本域的.swf文件里加上:flash.system.Security.allowDomain()
或者使用安全策略文件”crossdomain.xml”.在Flash 8以前,这个文件必须放在.swf所在域的根目录,现在,你可以使用flash.system.Security.loadPolicyFile(),指定安全策略文件所在的位置.拒绝任何域的做法是在标签内什么也不填,安全策略文件也支持通用字符”*”:
<?xml version=”1.0″?>
<cross-domain-policy>
    <allow-access-from domain=”swfaq.org” />
    <allow-access-from domain=”*.swfsh.com” />
    <allow-access-from domain=”210.38.196.48″ />
    <allow-access-from domain=”*” />
</cross-domain-policy>
- 作者:SWFAQ | http://swfaq.org