我有一个用ActionScript编写的旧程序,编译在Flash 6中。它加载了10个其他模块,其中3个是用Actionscript 2编写的,在Flash中编译8.原始程序被嵌入到html中,并且当html文件在web服务器上运行时完美工作。但是,如果我只是将HTML文件拖到我的浏览器,则不会加载3个AS2模块。或者更准确地说,他们确实加载了,但我无法访问他们的功能。 所有模块都使用“本地回放安全性=仅访问本地文件”进行编译。 我正在使用Flash CS3编译所有模块。 没有将主加载模块重写为AS2,有什么我可以做的解决这个问题? 谢谢Flash安全问题:将Flash 8 AS2模块加载到Flash 6 AS1模块时出现问题
2
A
回答
1
Flash的安全模型的规则有点神秘,但它似乎是对付跨脚本限制。一种选择可能是解决它,例如通过安装Apache(或其他)并通过http://localhost...
而不是file://...
访问内容。但是,安全问题也可以解决。
首先,您可能需要查看this article,特别是该页面的中间部分,该页面列出了允许一个SWF访问另一个SWF的功能的基本规则。如图表所示,使所有访问工作的最简单方法是让所有内容在“本地信任”沙箱中运行。如何做到这一点涵盖了同一文章的部分内容page 4。
1
我不确定这是否与您的问题有关,但混合AVM1 SWF文件可能会有问题。
如果在没有在输出设置中选择“针对版本6r65进行优化”选项的情况下针对版本6编译Flash SWF,则生成的字节码与针对v6r65或更高版本编译的AVM1 swf文件(特别是在使用AS2时大部分不兼容语言而不是AS1)。
这是因为对这些早期版本进行编译时,对_global属性的任何引用都指向不同的位置,因此_global命名空间中定义的属性对于针对以后版本的电影不可见,反之亦然。
鉴于类定义为居住在_global命名空间中的变量,混合那些针对性对于处在两侧6r65版本的SWF文件时,这可以证明是非常有问题的。
我记得通过复制在SWF文件中的一个,这是其他SWF文件可见位置_global参考解决此黑客攻击。
(预6r65)
class SomeClass
{
//
}
...
_global.someProp=123;
_level0.globalCopy=_global
(在岗6r65)
trace(SomeClass) //undefined
trace(_global.someProp) //undefined
trace(_level0.globalCopy.SomeClass) //[object object] i.e. defined
trace(_level0.globalCopy.someProp) //123
相关问题
- 1. Flash安全问题
- 2. DragManager将Flash应用程序加载到Flash应用程序时出现问题
- 3. flash 8 + setTimeout问题
- 4. flash as2 textfield - 输入关键问题
- 5. Flash player 10 XML和AS2问题
- 6. Flash AS3全屏问题
- 7. Flash Crossdomain.xml问题
- 8. IE8 - Flash问题
- 9. Drupal flash问题
- 10. Flash RegExp问题
- 11. 加载视频缩略图时出现跨域问题(Flash)
- 12. Flash中的全屏模式AS2
- 13. Flash AS3计时器问题
- 14. Android Camera2 Flash时序问题
- 15. 安全设置问题在测试中的Flash 8应用
- 16. 导入模块时出现问题
- 17. 创建Joomla模块时出现问题
- 18. innerHTML flash视频无法加载问题
- 19. Flash As3加载程序问题
- 20. Flash加载的影片剪辑问题
- 21. Flash动作预加载器问题actionscript2.0
- 22. Flash Player 10问题
- 23. flash z-index问题
- 24. Flash缓存问题?
- 25. Flash JSFL ExternalInterface问题
- 26. flash as3 mouseChildren问题
- 27. Flash“可见”问题
- 28. Flash on IE8问题
- 29. Flash AS CreateTextField()问题
- 30. Flash FLVPlayback CuePoint问题
在这种情况下,我必须排除选项1 - 尽管我知道这样做解决问题。 看完文章还没有散尽了一切,虽然我已经无意中发现了部分答案。如果我使用Flash 7选项发布AS2模块,那么我可以调用它们的函数并获得大约90%的工作量。 – 2009-01-06 05:46:28