c#防止反编译(加壳)

1.新建一个项目(所谓的壳)。命名为Test

2.将要加壳的程序test.exe文件做成资源文件防在Test文件中。

  打开新建的项目Test,双击最右侧的Solution Explorer的第一个按钮Properties。

  c#防止反编译,如何将exe文件做成资源文件(加壳)

 会出现这个画面

 c#防止反编译,如何将exe文件做成资源文件(加壳)

 然后点击Resourse-AddResource-添加现有资源,就将你要添加的test.exe添加进去,然后再solution
 Explorer中会生成一个文件夹 Resource你的test文件就在那里面,然后右键test.exe的属性将他改为嵌入的资源即(Embedded
 Resource),然后就搞定了。

3.之后将新建的项目Form1删除,

 将Programma.cs打开替换成以下代码

 1 static void Main(string[] args)
 2 {
 3         String projectName = Assembly.GetExecutingAssembly().GetName().Name.ToString();
 4         Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(projectName + ".Resources" + ".test.exe");
 5         byte[] bs = new byte[stream.Length];
 6         stream.Read(bs, 0, (int)stream.Length);
 7         Assembly asm = Assembly.Load(bs);
 8         MethodInfo info = asm.EntryPoint;
 9         ParameterInfo[] parameters = info.GetParameters();
10         if ((parameters != null) && (parameters.Length > 0))
11             info.Invoke(null, (object[])args);
12         else
13             info.Invoke(null, null);
14 }

 

posted on 2013-06-04 13:12  Hai_阔天空  阅读(2733)  评论(0)    收藏  举报

导航