轉自:http://hi.baidu.com/motiansen/blog/item/6a7412addeeba90d4b36d6ed.html

我用的版本是4.1.84.0,以,把自己编写DLL反编译了一下,反编译后的代码除了变量名不同外,其它基本上是一至的,我把反编译后的代码导到相关的文件里(要用到插件),再用vs.net编译,全部通过,真是爽呀.围绕Reflecto开发的插件也很非常多,在网搜索了一下基本到是下面这些,网上关于这些组件的用法和介绍也如出一辄,我想这就样就是网络共享的结果吧以下的组件其中Reflector.OpenRunningAssembly    Reflector.CodeModelView    Reflector.ClassView 我找过很多网站,都无法下载到,如果有那位朋友有,希望能给我了一份.
Reflector.FileDisassembler
Reflector.CodeMetrics  
Reflector.SQL2005Browser
Reflector.DelphiLanguage  
Reflector.McppLanguage  
Reflector.ChromeLanguage  
Reflector.Diff  
Reflector.VisualStudio  
Reflector.ClassView  
Reflector.CodeModelView  
Reflector.FileGenerator  
Reflector.Graph  
Reflector.OpenRunningAssembly
大家可以到Reflector官方网站(http://www.aisto.com/roeder/dotnet/)下载最新版本下载后解压缩会用一个Reflector.exe直接双击它,就可以运行呢,界面如下.



点击file->open   选择需要反编译的DLL,打开后控件的命名空间会出现在左边的列表中,如上面的dataaccesscommon.点需要反编的类如下面



在右边会出现该类的代码如下图:


         
看到了吧,反编译后的代码和原代码基本上没有什么区别. Reflector本身没有将代码导入到文件功能,需要用到相关插件.下面介绍一个插件用法及用途.

(1)     Reflector.FileDisassembler和Reflector.FileGenerator这两个插件的用的用途都是一样的,将反编译后的代码导出到相关文件,我这里只介绍Reflector.FileDisassemble的用法Reflector.FileGenerator用法类似Reflector.FileDisassemble
下截地址: http://www.denisbauer.com/Download.aspx?File=Reflector.FileDisassembler.zip
(a)       启动Reflector,点击view---add-ins….. 选择Reflector.FileDisassembler.dll (下载Reflector. FileDisassembler解压后有这个文件)添加成功后,在tools菜单中会有file disassembler选项.
(b)       选择需要导出的类再选择toolsàfile disassembler 出现以下对话框.




(c)       在文本框中,输入导出文件的目录,然后点击genrate生成文件.

(2)     Reflector.VisualStudio插件,将Reflector工具嵌入到vs.net里.下载Reflector.VisualStudio后,将解压后的文件和Reflector.exe放在一起,点击Reflector.VisualStudio.exe,即可导入.这时我们运行vs.net,可以通过菜单栏里的”外部程序- Reflector”运行Reflector.
下截地址: http://www.testdriven.net/downloads/ReflectorVsAddin.zip

(3)     Reflector.SQL2005Browser 添加方法同(1)该插件用来查看SQL Server 2005 (Yukon) database中的存储集合.
下截地址: http://www.denisbauer.com/Download.aspx?File=Reflector.SQL2005Browser.zip

(4)     Reflector.CodeMetrics插件,添加方法同(1)该插件用来分析.net assemblies 和显示该组件的性能参数
下截地址: http://projectdistributor.net/GetFile.aspx?type=b&id=55

(5)     Reflector.Graph插件添加方法同(1)该插件用来绘制集合的结构图.
下截地址: http://projectdistributor.net/GetFile.aspx?type=b&id=56

我这里只介绍了五个插件的应用.有什么说的不对的,大家可以指出. 不过Reflector对那些防反编译的好像就没有办法,仅仅使作这个工具是不行的,还需要更扎实的计算机基础知识.


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1509835

posted on 2010-01-29 11:38  湛然常寂  阅读(2234)  评论(1编辑  收藏  举报