首页 > flash&flex > sothink反编译后常见错误

sothink反编译后常见错误

2009年2月24日 admin 发表评论 阅读评论

从事flash的几乎没有没经历过反编译阶段,我的看法是:用来参考别人思路,学习提高可以,如果直接改来当做自己的作品就有点可耻了。做反编译的有好几家,常用的是asv,sothink,Trillix。言归正传,事情是这样的,之前as3模仿过一个图片切换的东东,(因为原来as2版本的似乎有点跨域问题),后来我格了系统,丢了源文件,再后来老沙向我要那个东西,并且要做点修改,这时候只能反编译了。

总结了点反编译后文件出错规律,拿来说说吧

1.添加了奇怪的数字字符

总觉得这玩意和编码有关,因为有的时候会在函数定义的下面一行多出一串数字,比较简单的,删除即可。

2.导入错误的包,或者路径错误.

比如明明是main.as 还要import main.*; @-@

3.while优化

while循环比for循环优化,所以很多代码中的for循环会被优化为while,这时候变量没有赋初始值,自增上限等往往会有边界错误,这个错误往往会引发undefined,等运行时错误。

4.块变量

到目前为止,flash没有块变量,也就是一个函数体中的变量唯一,但是反编译的东东有的时候会一个变量有多个含义,这时最好把_loc_1,_loc_2等改成有意义的单词。

5.类型错误

这种错误的产生很是匪夷所思,比如会把一个变量定义为string,然后给string添加个动态属性。这时候往往让人感觉无处下手,其实是类型错误导致的。

ok,暂且记录下心得,也算是新博客第一篇,提供下修改过反编译的代码

flash_box

Popularity: 35% [?]

分类: flash&flex 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.