Reflactor反编译winform心得

     Reflactor就不介绍了,.net下的免费反编译工具。Reflactor在某些情况下是很必须的,当遇到bug的时候,可以通过Reflactor看其内部的实现机制,从而找到真正的bug所在。或者可以通过reflactor查看私有生成,然后在用反射去调用。
    上面说的都是正当用途,有的时候也可以用来反编译别人的软件。混淆了的软件,我就不管了。这里要讲的是没有混淆和加密的软件的反编译。reflector的右键菜单中的export就能做到反编译,如下图。

    反编译的文件默认保存在My Documents\Reflector\Disassembler下,但是这个反编译有一些问题,对于winform的资源文件无法反编译。这就需要我们另寻他法。
    经过我的不懈努力找到了一个插件File dessassemble,他能实现这样的功能。
    反编译出来后,用visual sutio打开后就能编辑了,但是有时候会有一些问题。下面总结一下。
1、编译没有问题,运行出现“类型初始值设定项引发异常”
    这主要是在类中使用了两个静态变量,而其中一个静态变量的初始化依赖令一个静态变量,而被依赖的静态变量放在依赖变量的前面,比如下面的代码就会出现这样的问题。
Code

    问题很好解决,掉个个就解决了。

2、出现无法找到资源文件,如图片等
    这种情况一般是和资源文件的命名如果,请把资源文件命名保持和类一直,重新编译一下就会解决问题,注意需要重新生成,否则就不一定好使了。

3、打开form的时候出现错误
    这个问题,我通过搜索解决了,园子里有一篇文章,我转过来。

转载文章

    这文章很好,转了好几次了。
    本文归作者和博客园功能所有,转载请注明出处:http://www.cnblogs.com/youwang/。

posted on 2009-08-24 00:39  小橋流水  阅读(2279)  评论(1编辑  收藏  举报

导航