首页 > 代码库 > 运行时动态将字符串编译为C#可执行代码
运行时动态将字符串编译为C#可执行代码
private void button1_Click(object sender, EventArgs e) { CSharpCodeProvider CSharp = new CSharpCodeProvider(); String[] dll = { "System.dll", "System.Windows.Forms.dll" }; CompilerParameters 编译参数 = new CompilerParameters(dll); 编译参数.GenerateExecutable = false; 编译参数.GenerateInMemory = true; string 代码串 = this.textBox1.Text; CompilerResults 结果 = CSharp.CompileAssemblyFromSource(编译参数, 代码串); Assembly 程序集 = 结果.CompiledAssembly; object 动态对象 = 程序集.CreateInstance("wxd"); MethodInfo 方法 = 动态对象.GetType().GetMethod("setText"); object[] 参数 = { this.button1 }; object s = 方法.Invoke(动态对象, 参数); System.Console.WriteLine(s); }
运行时动态将字符串编译为C#可执行代码
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。