【发布时间】:2011-04-06 06:32:14
【问题描述】:
与this guy 不同,我使用MTASC 的Haxe 从AS 编译SWF。考虑到我没有 Adobe CS,我们有哪些选项可以从任何 FLA 文件中提取动作脚本?
我的意思是不同的版本,例如 CS4、CS5 等。将旧版本转换为 CS5 也会有所帮助。
【问题讨论】:
标签: flash actionscript haxe
与this guy 不同,我使用MTASC 的Haxe 从AS 编译SWF。考虑到我没有 Adobe CS,我们有哪些选项可以从任何 FLA 文件中提取动作脚本?
我的意思是不同的版本,例如 CS4、CS5 等。将旧版本转换为 CS5 也会有所帮助。
【问题讨论】:
标签: flash actionscript haxe
如果您的 FLA 提供者使用的是 CS5,则 FLA 会以基于 zip 的 XFL 格式保存。然后,您可以简单地将 .FLA 扩展名重命名为 .ZIP 并解压缩以查看其内容。任何框架脚本都将位于 DomDocument.xml 中。
有关更多详细信息,请参阅 Lee Brimelow 的帖子:http://blog.theflashblog.com/?p=1986
【讨论】:
strings 是 mac 中的常用命令。但它没有从 FLA 的 AS 部分带来任何东西。它只适用于我尝试过的 CS5 文件,在应用了你的技巧之后,它在 DOMDocument.xml 中找到了脚本,我可以打开它而不需要 strings .
CS4 FLA 容器是Microsoft Structured Storage(类似于 MS Word 文档)。您可以使用例如FAR Manager 或OpenMCDF 打开它。嵌入的 AS3 代码可以在 Unicode 纯文本的对象中看到。可以用支持Unicode编码(2字节UCS-2 Little Endian,不是UTF8)的文本编辑器打开,去掉二进制垃圾。
CS5 FLA 只是一个 ZIP,其中包含 DOMDocument.xml 中的 AS3 代码。
【讨论】:
您可以使用 FFDEC 来提取脚本和资产:
【讨论】: