生成exe文件在.net [英] Generate exe in .Net

查看:119
本文介绍了生成exe文件在.net的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在.NET中,可以生成字节code在内存中,presumably产生的程序保存到一个.exe文件。要做到第一步,我已经适应了从的 HTTP://www.$c$c-magazine.com/Article.aspx quickid = 0301051

In .Net, you can generate byte code in memory, and presumably save the resulting program to a .exe file. To do the first step, I have the following test code adapted from http://www.code-magazine.com/Article.aspx?quickid=0301051

var name = new AssemblyName();
name.Name = "MyAssembly";
var ad = Thread.GetDomain();
var ab = ad.DefineDynamicAssembly(name, AssemblyBuilderAccess.Run);
var mb = ab.DefineDynamicModule("MyModule");
var theClass = mb.DefineType("MathOps", TypeAttributes.Public);
var retType = typeof(System.Int32);
var parms = new Type[2];
parms[0] = typeof(System.Int32);
parms[1] = typeof(System.Int32);
var meb = theClass.DefineMethod("ReturnSum", MethodAttributes.Public, retType, parms);
var gen = meb.GetILGenerator();
gen.Emit(OpCodes.Ldarg_1);
gen.Emit(OpCodes.Ldarg_2);
gen.Emit(OpCodes.Add_Ovf);
gen.Emit(OpCodes.Stloc_0);
gen.Emit(OpCodes.Br_S);
gen.Emit(OpCodes.Ldloc_0);
gen.Emit(OpCodes.Ret);
theClass.CreateType();

你怎么做的第二个步骤,并将结果保存到一个.EXE?

How do you do the second step, and save the result to a .exe?

推荐答案

我想你可能会寻找<一href="http://msdn.microsoft.com/en-us/library/system.reflection.emit.assemblybuilder.save%28v=VS.71%29.aspx"相对=nofollow> AssemblyBuilder.Save

这篇关于生成exe文件在.net的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆