编程资料集中营
 | 网站首页 | 文章中心 | 编程资料2 | 软件下载 | BT下载 | 八卦星闻 | 音乐在线 | 在线游戏 | 免费电影 | 给我留言 | 
Reflector: Get the secret inside .NET assemblies.
        
【字体:
Reflector: Get the secret inside .NET assemblies. 进入问吧

本站地址:http://www.bajiao123.com

作者:admin    文章来源:本站    点击数:    更新时间:2007-4-9    

本专题主要介绍Allen Lee在平时的工作和学习中遇到的好的.NET工具,并讲述相关的使用经验。工欲善其事,必先利其器。那么,现在就让我们看看有什么器可以利吧!

2. 在.NET上编程的朋友应该知道ILDASM的大名吧,这里为大家介绍另一个叫作Reflector的好东东。为了了解Reflector,我特意写了一个代码片断(这里只给出用C#写的Main方法的代码):

static void Main(string[] args){    ArrayList argList = new ArrayList();    if(args.Length != 0)    {        foreach(string arg in args)        {            switch(arg)            {                case "IL":                    Console.WriteLine("IL");                    argList.Add("IL");                    break;                case "C#":                    Console.WriteLine("C#");                    argList.Add("C#");                    break;                case "VB.NET":                    Console.WriteLine("VB.NET");                    argList.Add("VB.NET");                    break;                case "Delphi":                    Console.WriteLine("Delphi");                    argList.Add("Delphi");                    break;                default:                    Console.WriteLine("Invalid Option");                    break;            }        }    }    else    {        string choice = Console.ReadLine();        switch(choice)        {            case "IL":                Console.WriteLine("IL");                break;            case "C#":                Console.WriteLine("C#");                break;            case "VB.NET":                Console.WriteLine("VB.NET");                break;            case "Delphi":                Console.WriteLine("Delphi");                break;            default:                Console.WriteLine("Invalid Option");                break;        }    }    foreach(object obj in argList)        Console.WriteLine((string)obj);}

对上面的代码进行编译,得到一个ReflectorLab.exe的程序集(Assembly),程序集的名字可能不同。然后我们运行Reflector,一开始它的界面是:

接着,我们打开菜单:File|Open,找到并选择刚刚编译的程序集,该程序集将会被加入到程序集列表,打开ReflectorLab的树,找到Main(string[]):Void这个方法,右击并选择Disassembler,将会得到下图的反编译代码:

现在截取反编译后的Main方法完整代码如下:

private static void Main(string[] args){      string text1;     

[1] [2] [3] [4] 下一页

   

进入问吧

Reflector: Get the secret inside .NET assemblies.

本站地址:http://www.bajiao123.com

文章录入:admin    责任编辑:admin 
编程资料集中营