C# 理解代码时遇到的问题

C# 理解代码时遇到的问题,c#,C#,我无法理解下面给出的代码,所以任何人都可以帮助我理解代码 private bool Compile(string path) { bool result; using (CSharpCodeProvider prov = new CSharpCodeProvider()) { CompilerParameters param = new CompilerParameters(); string pathtoicon = ""; if (F

我无法理解下面给出的代码,所以任何人都可以帮助我理解代码

private bool Compile(string path)
{
   bool result;

   using (CSharpCodeProvider prov = new CSharpCodeProvider())
   {
      CompilerParameters param = new CompilerParameters();

      string pathtoicon = "";
      if (File.Exists(Application.StartupPath + "\\icon.ico"))
      {
         pathtoicon = Application.StartupPath + "\\icon.ico";
      }

      param.CompilerOptions = "/target:winexe" + " " + "/win32icon:" + "\"" + pathtoicon + "\"";
      param.GenerateExecutable = true;
      param.IncludeDebugInformation = false;
      param.EmbeddedResources.Add(Environment.GetEnvironmentVariable("TEMP")+"\\points.dat");
      param.OutputAssembly = path;
      param.GenerateInMemory = false;

      param.ReferencedAssemblies.Add("System.dll");
      param.ReferencedAssemblies.Add("System.Data.dll");
      param.ReferencedAssemblies.Add("System.Deployment.dll");
      param.ReferencedAssemblies.Add("System.Drawing.dll");
      param.ReferencedAssemblies.Add("System.Windows.Forms.dll");
      param.ReferencedAssemblies.Add("System.Xml.dll");

      param.TreatWarningsAsErrors = false;
      CompilerResults compresults = prov.CompileAssemblyFromSource(param, Properties.Resources.Program);

      result = compresults.Errors.Count == 0;

      File.Delete(Environment.GetEnvironmentVariable("TEMP") + "\\points.dat");
   }

   return result;
}

简而言之,上面的代码使用.NET framework中可用的编译器类编译一个新的.NET程序集

以下是一些可能对您有所帮助的文档:


您无法理解代码的哪一部分?param.CompilerOptions=/target:winexe++/win32icon:+\+pathtoicon++;param.GenerateExecutable=true;param.includedebuginfo=false;参数EmbeddedResources.AddenEnvironment.GetEnvironmentVariableTEMP+\\points.dat;param.OutputAssembly=路径;param.GenerateInMemory=false;param.referencedAssemblys.AddSystem.dll;你能帮我理解这个部分吗?代码实际上是在创建一个程序集。正在创建编译器参数/选项。-这里有更多细节-