怎样让用户可以在文本框中输入代码?
输入完成后,点击Button1让代码成为button2的click事件输入过程中可以产生代码提示的效果。 --------------------编程问答-------------------- 什么意思,你的意思是要让一个程序,能够在文本框中输入代码并运行么?代码需要编译才能运行,恐怕这个很难实现吧 --------------------编程问答-------------------- 嗯 要运行代码 C#是可以做到的 我找找啊
这些代码是我从http://support.microsoft.com/kb/304655 拷贝过来的,你可以去原文看看。
核心就是ICodeCompiler啦
CSharpCodeProvider codeProvider = new CSharpCodeProvider();
ICodeCompiler icc = codeProvider.CreateCompiler();
string Output = "Out.exe";
Button ButtonObject = (Button)sender;
textBox2.Text = "";
System.CodeDom.Compiler.CompilerParameters parameters = new CompilerParameters();
//Make sure we generate an EXE, not a DLL
parameters.GenerateExecutable = true;
parameters.OutputAssembly = Output;
CompilerResults results = icc.CompileAssemblyFromSource(parameters, textBox1.Text);
if (results.Errors.Count > 0)
{
textBox2.ForeColor = Color.Red;
foreach (CompilerError CompErr in results.Errors)
{
textBox2.Text = textBox2.Text +
"Line number " + CompErr.Line +
", Error Number: " + CompErr.ErrorNumber +
", '" + CompErr.ErrorText + ";" +
Environment.NewLine + Environment.NewLine;
}
}
else
{
//Successful Compile
textBox2.ForeColor = Color.Blue;
textBox2.Text = "Success!";
//If we clicked run then launch our EXE
if (ButtonObject.Text == "Run") Process.Start(Output);
} --------------------编程问答-------------------- 有的代码行,有的不行,我记得是不能生成服务器控件 --------------------编程问答-------------------- 这玩意理论上应该是可以编译出所有的C#代码的,当然还需要加入合适的引用,至于运行么。。。那个得看环境了。。 --------------------编程问答-------------------- 怎样把代码加入到button的click事件中去
补充:.NET技术 , C#