浅谈Flash课件反编译应用的几点经验技巧
2014-10-21李晖
摘 要:Flash课件反编译在Flash课件制作开发过程中占有重要地位,可以辅助课件开发者通过Flash反编译软件把Flash课件的SWF文件反编译成FLA格式的源文件,这样就相当于掌握了这个Flash课件作品的所有制作开发“秘密”,进一步地进行学习、研究、修改等高级应用,大大提高Flash课件开发效率和Flash课件素材的重用性,最终大大提升Flash课件制作者的课件制作和应用能力。
关键词:反编译;Flash;课件;闪客硕思;源文件;swf;技巧
中图分类号:TP319
Flash课件是现在课件领域的主流,可以制作开发出界面精美、交互性强的辅助教学课件。如今,在网海中共享着海量的Flash课件素材资源既有完整优秀的Flash课件成品还有Flash精美的课件素材片段,这就为学习和研究Flash课件开发技巧提供了一条快捷直通车。通过闪客硕思等反编译软件反编译成FLA的源文件进行学习研究,加工应用Flash素材,这就为学习和应用Flash课件提供一条快捷通道,实践证实,通过Flash的反编译技术,可大大提高Flash课件制作应用效率和Flash课件重复利用率。本文笔者结合自身Flash课件制作、反编译、应用经验,浅谈一下Flash课件反编译应用的几点经验技巧,与Flash课件开发者分享。
1 Flash课件相应反编译软件技巧概述
Flash又被称之为闪客,是由macromedia公司推出的交互式矢量图和Web动画的标准,可以通过相应反编译的综合配合反编译成Flash源文件,以供学习、研究和修改,提高Flash课件制作的效率和提升Flash课件制作技巧。
1.1 掌握Flash课件反编译软件是核心技巧。Flash课件反编译必须通过专业的Flash反编译软件才能完成,这也是Flash课件反编译的核心技巧。主要的反编译软件有硕思闪客精灵(Sothink SWF Decompiler)、Flash Decompiler Trillix、Action Script Viewer(ASV)等,这些反编译软件功能基本相似,只是个别功能有所增强,操作方法相同,掌握一个反编译软件操作技巧后能很方便地移植到另一个反编译软件。Flash爱好者根据不同研究目标和需求选择不同的相关反编译软件,也可以针对一个Flash课件作品应用不同的反编译软件,相互对比一下反编译Flash源文件的效果,取之反编译效果最好的那个软件使用,这就是仁者见仁,智者见智了。笔者比较倾向于硕思闪客精灵反编译软件,这是一款专业的Flash反编译工具,它不但能捕捉、反编译、查看和提取shockwave Flash影片(.swf和.exe格式文件),而且可以将SWF格式文件转化为FLA格式文件(swf转fla)。在任意一个大容量的Flash影片上都能轻松的完成反编译和数据元素的导出。它让用户能够批量反编译多文件和批量导出FLA文件及资源。
1.2 掌握Flash课件EXE转SWF格式转换技巧。判断Flash作品必须SWF格式才能正常反编译——Flash课件可发布成EXE可执行文件格式,这就为反编译Flash增加难度,因此,反编译Flash就得先使用相关Flash格式转换软件把EXE格式的Flash课件转换成SWF格式,其中常见Flash格式转换软件有:Flash文件格式转换器、Flash Change、EXE转换SWF工具等。还有一种特殊情况是通過Flash加密工具或第三方SWF保护软件处理而成的EXE文件,例如使用SWFKit Pro软件生成的Flash EXE格式文件,就无法通过Flash转换格式软件脱壳还原成SWF文件。
1.3 掌握加解密Flash课件软件技巧。正因为反编译软件的出现,Flash课件爱好者们也通过加密软件进行保护课件作品,保护其作品的完整性和版权。但有矛就有盾,随之针对Flash加密软件而言,解密Flash课件软件应运而出,加解密是Flash课件作者的心中永远的痛。从这个意义上讲加解密攻防是反编译Flash课件成功的关键。现在对Flash课件加密的方法和软件很多,如doswf、SWFEncrypt等,尤其一些Flash课件针对ActioScript脚本代码段进行加密,更增加了解密还原的难度,例如doSWF软件加密AS,就有对应的解密软件工具,如果遇到SWF Encrypt加密过的作品,只能对其中的AS无奈了。
2 Flash课件反编译应用技巧
只有掌握Flash课件反编译应用技巧,才能更好解决面对各种各样的Flash反编译难题,更快捷地研究Flash作品,提高课件开发水平。
2.1 牢记Flash反编译不是万能的。要记住Flash反编译不是万能的,也不可能100%还原Flash原来的源文件面貌,这只是Flash课件爱好者研究、学习、提到素材一种有效手段,不要幻想不牢而获,也不要过高期望Flash反编译成功效率,反编译得尝试,不可能100%成功,不要对反编译报以任何“希望”,反编译不了是正常的。即使能正常反编译,也不要为之高兴,还要打开反编译后的源文件理顺一下库文件和时间轴,这将是一项巨大的工作,如果对Flash不是很精通的课件开发者,可能面对混乱的源文件感到失望和不知所措。因此,获得反编译的Flash源文件后,先不要着急入手修改或提取,先要全盘“研究”浏览一下源文件的结构和库文件,做到知已知彼,才能得心应手。
2.2 Flash反编译技巧是一项综合操作技巧。Flash反编译技巧是一项综合操作技巧,需要很多软件支撑,例如,网络获取Flash软件,有很多课件制作者看到网络上很好的Flash作品却无法下载到本地硬盘,那又何谈编译呢。通过这些第三方的Flash工具综合应用可以大大提高反编译Flash作品的成功率——对于任何一个Flash课件来说,都要多角度多方式尝试增加反编译Flash的成功率,能达到60%以上的反编译成功率就很庆幸的了。这其中AS的编程解析综合能力是反编译交互类Flash课件的难点,要求能读懂别人撰写的AS代码、流程和算法,否则看着一段段AS代码就是一团浆糊。总之,Flash课件反编译是个慢功活,是需要多种综合技能支撑,才能更好地完成反编译任务。
2.3 另辟蹊径“反编译”SWF的静态课件素材。Flash软件文件菜单里导入SWF功能,可以另辟蹊径“反编译”SWF的静态课件素材——导入进来的SWF文件,在时间轴上会生成一个个关键帧,不带有任何AS代码,这样就可以方便提取静态的矢量课件素材了。有时SWF文件容量过大,可以先反编译出相应的元件来,再导入Flash舞台上,这样成功率会提高。另外,有的SWF文件是带有保护密码功能,这就需要第三方软件进行破解后再进行导入。这只是一种快速获取SWF的静态矢量课件素材的方法,不能获得SWF的源文件。
3 Flash反编译技巧永远是一种学习手段
Flash课件制作者可以通过反编译软件“破解”成Flash源文件、修改或再次但要强调的是:做为研究学习的一种手段,保护原创作者的作品版权,不提倡反编译修改作品为自己所用——Flash反编译技巧永远是一种学习手段。换位思考,任何一位Flash课件作者都不希望作品被滥用、盗用其中原创素材,不希望被随意反编译修改、剽窃,即使加密也是防“君子”不防“小人”,从这个意义上讲,反编译技巧仅是当自己作品或作者授权的作品丢失fla源文件的情况下的临时补救的办法或做为一种研究学习的手段,切记尊重他人作品就是尊重自己劳动成果。
综上所述,掌握Flash反编译的各种软件工具和应用技巧是Flash课件开发者的一项必备的基本功,只有精通Flash各项操作技巧,才能灵活应对反编译Flash中遇到的各种复杂情况,提升Flash课件制作的效率,更好为辅助教学提高教学质量服务。
参考文献:
[1]机器猫.动画加密利器SWF Encrypt[J].电脑迷,2006(23).
[2]黄萍.反编译Flash动画软件Sothink SWF Decompiler的使用[J].物理教师:高中版,2005(05).
作者简介:李晖(1977.07-),女,北京人,讲师,研究方向:计算机应用。
作者单位:新疆铁道职业技术学院,新疆乌鲁木齐 830011