Janyou's blog

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

随着SWF 文件格式和ActionScript Virtual Machine 2规范的公开,网络上出现了很多开源的SWF操作工具(Decompiler/Parser/Creater ),通过这些工具,可以完成分析AS、Flex、Flash等程序结构,提取算法、资源,混淆代码,动态生成SWF等各种功能。

简单比较一下典型的SWF操作工具:

Name Dev
Language
Read
/write
support
 DoABC Tag
support
other
Tag
support
Flash player9
support
Flash player10
Reliability Ease-of-use Function
Jswiff Java × ★★★★☆ ★★★★☆ ★★★★☆
swfassist Actionscript ★★☆☆☆ ★★★☆☆ ★★★☆☆
as3c C# × × ★★★★☆ ★★★★★ ★★★☆☆
hxformat haXe ? ? ?

 

综述:

1.Jswiff目前综合能力是最好的,不过主页现在打不开了(is dead?)。svn还能访问,它的Jswiff 9 分支提供了对DoABC Tag的解析,目前只支持Flash 9.

   java系中还有Adobe flex sdk中自带的swfutils,实现了对swf文件的读(dump)(包括对DoABC Tag的解析)。

2.swfassist是spark的一个子项目,功能比较全面。它的abc-extended分支提供了对DoABC Tag的解析,不过对其可用性表示怀疑,简单读写一次SWF文件没有成功。

  actionscript系中对swf解析的工具比较多,不过大部分现在停止更新了。

3.as3c整个设计架构和code非常漂亮,如果看不懂ActionScript Virtual Machine 2规范的话,不如看看as3c的代码。不过它只关心Actionscript。

4.heformat(SWF、ABC)由haXe语言所写,还没有使用过haXe语言,不过对其代码精简能力留下了深刻的印象。

posted on 2009-10-29 12:38  janyou  阅读(1001)  评论(0编辑  收藏  举报