public CompilerResults Build(string dirWithSrc) { string[] sources = GetSourcesFromDir(dirWithSrc, new string[] { ".cpp", ".h" }); var cppc = new CppCodeProvider(); var parameters = new CompilerParameters(); parameters.OutputAssembly = OutputFile; parameters.GenerateExecutable = Executable; parameters.GenerateInMemory = GenerateInMemory; parameters.IncludeDebugInformation = IncludeDebugInfo; parameters.ReferencedAssemblies.AddRange(IncludedLibraries.ToArray()); parameters.EmbeddedResources.AddRange(EmbeddedResources.ToArray()); parameters.LinkedResources.AddRange(LinkedResources.ToArray()); if (MainClass != null) { parameters.MainClass = MainClass; } CompilerResults results = cppc.CompileAssemblyFromSource(parameters, sources); return(results); }
// Biên dịch file chứa Source code sang file exe public static CompilerResults CompileFromFile(string fileName, string outputFile, string language) { CSharpCodeProvider codeCSharpProvider = new CSharpCodeProvider(); CppCodeProvider codeCPPProvider = new CppCodeProvider(); CompilerParameters paramters = new CompilerParameters(); paramters.OutputAssembly = outputFile; paramters.GenerateExecutable = true; CompilerResults results = null; if (language == "C#") { results = codeCSharpProvider.CompileAssemblyFromFile(paramters, fileName); } else if (language == "C++") { results = codeCPPProvider.CompileAssemblyFromFile(paramters, fileName); } return(results); }