[转]将C#程序嵌入资源中(C# 调用嵌入资源的EXE文件方法)
本站寻求有缘人接手,详细了解请联系站长QQ1493399855
1. 我们有一个test.exe的WinForm程序,这是我们要加壳的目标程序。
2. 新建一个WinForm工程,删除Form1,然后新建一个类。如下。
3. 将test.exe 拷贝到该工程目录,作为嵌入式资源。
编译后的程序会自动将资源中的目标文件加载运行。继续发挥一下,我们可以增加启动密码;将目标程序进
2 using System.Windows.Forms;
3 using System.Resources;
4 using System.Reflection;
5 using System.IO;
6 namespace test
7 {
8 staticclass Program
9 {
10 [STAThread]
11 staticvoid Main(string[] args)
12 {
13 Stream stream = Assembly. GetExecutingAssembly_r(). GetManifestResourceStream_r("test.Code.exe");
14 byte[] bs =newbyte[stream.Length];
15 stream.Read(bs, 0, (int)stream.Length);
16 Assembly asm = Assembly.Load(bs);
17 MethodInfo info = asm.EntryPoint;
18 ParameterInfo[] parameters = info. GetParameters_r();
19 if ((parameters !=null) && (parameters.Length >0))
20 info.Invoke(null, (object[])args);
21 else
22 info.Invoke(null, null);
23 }
24 }
25 }
26