如何 动态编译自己写的代码

发表于:2007-06-30来源:作者:点击数: 标签:
CSharpCodeProvider _coder=new CSharpCodeProvider(); ICodeCompiler complier=_coder.CreateCompiler(); CompilerParameters _par=new CompilerParameters(); _par.GenerateExecutable=true; _par.OutputAssembly=sy1.exe;//设置应用程序名 _par.MainClass=
CSharpCodeProvider _coder=new CSharpCodeProvider();
ICodeCompiler complier=_coder.CreateCompiler();
CompilerParameters _par=new CompilerParameters();
_par.GenerateExecutable=true;

_par.OutputAssembly="sy1.exe";//设置应用程序名
_par.MainClass="sy1";//设置主类

_par.IncludeDebugInformation=true;

foreach(Assembly asm in AppDomain.CurrentDomain.GetAssemblies())
{
_par.ReferencedAssemblies.Add(asm.Location);
}

string get_Code=_code;

CompilerResults _res=complier.CompileAssemblyFromSource(_par,get_Code);

if(_res.Errors.Count>0)
{
ErrInfo pEi=new ErrInfo();
pEi.Show();
ListBox getList=pEi.getList;
foreach(CompilerError err in _res.Errors)
{

getList.Items.Add(err.ErrorText);
}
}
else
{
MessageBox.Show("suclearcase/" target="_blank" >ccess");
}

原文转自:http://www.ltesting.net