C♯, C#相談室 Part32
■ このスレッドは過去ログ倉庫に格納されています
0364354
2006/06/29(木) 20:58:371.System.Reflection.Emitを駆使してやろうとした。
2.C#コードの解析方法わかんねー!ってなって、CodeDomを駆使してやろうとした。
3.アセンブリが出力されるのか・・・、やっぱ1でやりたいなって思って今に至る。
ちなみにCodeDomを駆使してやろうとしたときのコードが↓。
string input = Console.ReadLine();
StringBuilder sb = new StringBuilder();
sb.Append("using System;");
sb.Append("namespace test");
sb.Append("{");
sb.Append("public static class TestClass");
sb.Append("{");
sb.Append("public static object TestMethod()");
sb.Append("{");
sb.Append("return" + input);
sb.Append("}");
sb.Append("}");
sb.Append("}");
StringReader sr = new StringReader(sb.ToString());
Microsoft.CSharp.CSharpCodeProvider provider = new Microsoft.CSharp.CSharpCodeProvider();
CompilerParameters parameters = new CompilerParameters();
parameters.GenerateExecutable = false;
parameters.OutputAssembly = @"C:\test.dll";
parameters.GenerateInMemory = false;
parameters.TreatWarningsAsErrors = false;
CompilerResults result = provider.CompileAssemblyFromSource(parameters, sb.ToString());
if (result.Errors.Count == 0)
{ // 実行 }
このコードとさっき晒したコードをうまく組み合わせればいいのか・・・?
■ このスレッドは過去ログ倉庫に格納されています