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

本专题主要介绍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;
本站地址:http://www.bajiao123.com

