中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档 | 网通镜像
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > .NET > .NET Framework
IL系列文章之二:MakeBestUseofOurTools
作者:windfast_2000 时间:2002-01-23 12:09 出处:互联网 责编:chinaitpower
              摘要:IL系列文章之二:MakeBestUseofOurTools

IL系列文章之二:

Make Best Use of Our Tools

工欲善其事,必先利其器。这一节我谈的就是我们用于研究IL的工具。

第一篇文章贴出来之后,网上有朋友问我“能不能看到c#程序的IL代码?”。看来还有些朋友对IL的编译与反编译还不太熟悉,所以我个人认为写一篇关于工具的文章还是有必要的。我们的工具主要有三个,第一个是dumpbin,可以把exe,obj,dllbump出来然我们它们的PE结构,关于PE结构的讨论前一段时间比较热,网络上杂志上都有很多资料。(如果你先麻烦懒得去找的话,那你就等着什么时候我也来写一篇吧J)。另外两个是ilasmildasm,上次的文章中我们已经提到过了,分别是IL的编译器和反编译器。dumpbin, ilasm的说明已经比较详细了。你可以启动Visual Studio .NET命令提示,键入“dumpbin /?”,“ilasm /?”或“ildasm /?”,Enter,就可以看到在三个应用程序的命令行帮助了。更为详细的MSDN资料如下:

dumpbinms-help://MS.VSCC/MS.MSDNVS.2052/vccore/html/_core_dumpbin_reference.htm

ilasmms-help://MS.VSCC/MS.MSDNVS.2052/cptools/html/cpconmsilassemblerilasmexe.htm

ildasmms-help://MS.VSCC/MS.MSDNVS.2052/cptools/html/cpconmsildisassemblerildasmexe.htm

(不过你要安装了Visual Studio.NET整合的MSDN才能看到。)

这些我都不想再说了,自己去看吧。我下面要讲的是一个不太容易被人们发现的东西——ildasm的高级选项。

         你在Visual Studio .NET命令提示下输入“ildasm /?”看看有什么东西,然后在输入“ildasm /ADV /?”再看看多了什么东西(ADV就是Advanced的意思)。我们第一个输入下是看不到ADV选项的,在第二个输入下我们看到了多出了几个高级选项。这些高级选项对于那些以.net平台为目标的工具开发者很有益处。

         可供选择的命令行高级参数如下:

/ADV 以高级方式启动ildasm,在你启动ildasm后“视图”菜单中会出现一些高级选项。如果你是想使用命令行的方式进行反编译的话,“/ADV”必须写在其它选项前面前面,如“/ADV /CLASSLIST”等。

/STATS 显示镜像文件(你就把它理解为被你反编译的文件好了)的统计信息。

/CLASSLIST 包括本模块中定义的类的列表。

/ALL 包括 /HEADER, /BYTES, /STATS, /CLASSLIST, /TOKENS

/METADATA[=<specifier>] 显示<specifier>所指定的MetaData<specifier>包括:

MDHEADER 显示MetaData header包含的信息和大小。

HEX 显示更多十六进制表示的内容。

CSV 以逗号分隔的形式显示header的大小。(这里我没搞太懂L。)

UNREX 显示无法分析的外部对象。

VALIDATE metadata的一致性进行验证。(对于metadata我以后会有文章介绍。)

         OK!差不多了,就先写到这里吧。

关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有