十个必备的.NET开发小工具(6):.NET Reflector

转载 2004年07月13日 10:53:00
作者:James Avery  翻译:lucentoff

出处:http://msdn.microsoft.com/msdnmag/issues/04/07/MustHaveTools/default.aspx

声明:版权属原作者所有,转载请注明出处!<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

.NET Reflector

 

.NET Reflector是一个类浏览器和反编译器,它能够检查程序集并显示其所有信息。.NET Framework 引入了反射的概念,利用反射可以检查任何基于.NET的代码,无论是单个的类还是完整的程序集。反射还可用于检索特定程序集中有关各种类、方法和属性的信息。使用.NET Reflector可以浏览程序集的类和方法,可以检查这些类和方法生成的微软中间语言(MSIL),可以反编译类和方法,还可以查看等效的C# Visual Basic? .NET代码。

 

为了加以说明,我把前面的NUnitExample程序集加载到.NET Reflector中进行查看,如图7 所示。

 

 

7 利用.NET Reflecto查看NUnitExample程序集

 

.NET Reflector带有多种工具,你可以进一步检查这个程序集。如果要查看组成方法的MSIL,可以右键点击方法,然后从弹出菜单选择“Disassembler”。

 

除了查看MSIL,你还可以通过选择工具菜单下的Decompiler查看方法的C#代码。也可以通过选择语言菜单查看方法反编译后的Visual Basic .NETDelphi代码。下面就是NET Reflector产生的C#代码:

 

 

以上代码和我编写的实际代码非常像,下面是实际代码:

 

 

尽管二者有点差别,但功能性相同。

 

虽然用这个例子展示对比实际代码与反编译代码是个好方法,但我认为.NET Reflector最有用之处是利用它检查.NET Framework程序集和方法。.NET Framework 提供很多途径来执行类似的操作。例如,如果要从XML读数据集,可以使用XmlDocumentXpathNavigatorXmlReader等各种不同方法。使用.NET Reflector,你可以查看Microsoft公司怎样编写DataSetReadXml方法,或如何从配置文件读取数据。.NET Reflector对于查看HttpHandlerconfiguration handler等对象的创建也是一个很好的途径,因为你可以看看Microsoft开发组在.NET Framework中是如何实际构建这些对象的。

 

.NET ReflectorLutz Roeder编写,下载网址:http://www.aisto.com/roeder/dotnet

 

[译注:在新版本4.0.10.0中,界面或操作稍有不同]

 

Reflector导出.NET工程项目的修复

Resgen将反编译的文件从.resources文件恢复到.resx文件: VS自带,目录为用Program Files\Microsoft Visual Studio XX\SDK\XX\Bin下...
  • letmefish
  • letmefish
  • 2016年07月27日 14:40
  • 1200

采用Reflector的VS.net插件断点调试无源码DLL

.Net的编程利器Reflector可以反编译基于.net开发的应用程序和DLL,其功能强大不用多说。今天想试验一把利用VS.net的插件断点调试外部无源码的DLL(只要是程序集都可以,所以exe也行...
  • lovetaosha
  • lovetaosha
  • 2015年05月16日 07:21
  • 4101

新.NET开发十大必备工具

Snippet Compiler ·新.Net开发必备十大工具详解之Snippet Compiler Snippet Compiler 是一个基于 Windows 的应用程序,可以通过它来编写、编...
  • paxhujing
  • paxhujing
  • 2016年06月14日 15:45
  • 1600

使用.NET Reflector 查看Unity引擎里面的DLL文件

当你查看unity里面的API的时候,是不是有时候追踪了一两步就碰到DLL文件走不下去了呢?很是不爽。 这种问题我是经常碰到。这是人家商业引擎不想让你看到底层代码啦,所以着急不得。 不过,今天我终于有...
  • zhaoguanghui2012
  • zhaoguanghui2012
  • 2015年08月20日 11:10
  • 2205

.net反编译工具Reflector使用详解

早就听说Reflector这个强大的类库分析与反编译工具,不过一直没有很好的利用起来。最近使用Reflector解决了一个实际开发问题,现将其总结出来。   需求导入:项目是一个GIS项目,在项目中...
  • benjiao878
  • benjiao878
  • 2014年04月26日 09:33
  • 742

Reflector 已经out了,试试ILSpy

原文:http://www.cnblogs.com/JamesLi2015/archive/2011/09/08/2170519.htmlReflector是.NET开发中必备的反编译工具。即使没有用...
  • testcs_dn
  • testcs_dn
  • 2016年01月10日 10:55
  • 6195

Reflector 已经out了,试试ILSpy

Reflector是.NET开发中必备的反编译工具。即使没有用在反编译领域,也常常用它来检查程序集的命名规范,命名空间是否合理,组织类型的方法是否需要改善。举例说明,它有一个可以查看程序集完整名称的功...
  • pj386960300
  • pj386960300
  • 2017年04月30日 09:53
  • 371

VS 使用自带的.NET Reflector单步调试编译好的程序集(反编译),以及相关其他反编译程序介绍

对于没有任何源代码和PDB文件的预编译程序集而言,如果没有合适的工具,调试起来并不容易。使用Red Gate的.NET Reflector可以在Visual Studio中即时反编译程序集,然后像...
  • AAA123524457
  • AAA123524457
  • 2016年03月04日 10:08
  • 7615

使用.NET Reflector单步调试编译好的程序集

对于没有任何源代码和PDB文件的预编译程序集而言,如果没有合适的工具,调试起来并不容易。使用Red Gate的.NET Reflector可以在Visual Studio中即时反编译程序集,然后像...
  • yizhiduxiu11
  • yizhiduxiu11
  • 2013年09月06日 11:31
  • 1140

asp.net mvc 之旅—— 第四站 学会用Reflector调试我们的MVC框架代码

我们知道,现在能调试.net程序通常有两个,第一个是ILSpy,还是一个是Reflector,这两个小反编译软件算是我们研究底层代码中所拥有的一把 锋利小尖刀~~~,比如你看到的ILSpy这样的界面...
  • huangxinchen520
  • huangxinchen520
  • 2017年03月22日 17:16
  • 271
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:十个必备的.NET开发小工具(6):.NET Reflector
举报原因:
原因补充:

(最多只允许输入30个字)