uso el siguiente código para compilar una aplicación de C++:compilación C++ aplicación en C#
Engine engine = new Engine();
engine.BinPath = @"C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319";
BuildPropertyGroup group = new BuildPropertyGroup();
group.SetProperty("Configuration", "Debug");
engine.BuildEnabled = true;
FileLogger logger = new FileLogger();
logger.Parameters = @"logfile=C:\tmp\build.log";
engine.RegisterLogger(logger);
bool success = engine.BuildProjectFile(@"E:\sv_repos\Test\Test\VS2010\Test\Test\Test.vcxproj", new string[] { "Build" }, group);
engine.UnregisterAllLoggers();
if (success)
MessageBox.Show("build!");
pero me da el siguiente error, se observará ninguna idea.
Fecha de creación 2012/01/04 03:32:16 ب.ظ. MSBUILD: error MSB4014: se anuló la compilación debido a una falla interna. MSBUILD: error MSB4014: System.InvalidCastException: no se puede convertir el objeto de tipo 'System.Xml.XmlComment' para escribir 'System.Xml.XmlElement'. MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Project.ProcessProjectChildren (XmlElement projectElement, Cadena projectDirectoryLocation, Boolean importedProject) msbuild: error MSB4014: en Microsoft.Build.BuildEngine.Project.ProcessImportElement (XmlElement importElement, cadena projectDirectoryLocation, Boolean importedProject) MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Project.ProcessProjectChildren (XmlElement projectElement, cadena projectDirectoryLocation, Boolean importedProject) MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Project. ProcessImportElement (XmlElement importE) lement, Cadena projectDirectoryLocation, Boolean importedProject) MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Project.ProcessProjectChildren (XmlElement projectElement, Cadena projectDirectoryLocation, Boolean importedProject) MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine. Project.ProcessMainProjectElement() MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Project.RefreshProjectIfDirty() MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Project.InternalLoadFromXmlDocument (XmlDocument projectXml, ProjectLoadSettings projectLoadSettings) MSBUILD : error MSB4014: en Microsoft.Build.BuildEngine.Project.Load (Stri) ng ProjectFileName, BuildEventContext buildEventContext, ProjectLoadSettings projectLoadSettings) msbuild: error MSB4014:
en Microsoft.Build.BuildEngine.Engine.GetMatchingProject (Proyecto existingProject, Cadena projectFullPath, BuildPropertyGroup globalPropertiesToUse, Cadena toolsVersion, String [] targetNames, BuildEventContext buildEventContext, Boolean toolsVersionPeekedFromProjectFile) MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Engine.BuildProjectFileInternal (BuildRequest buildRequest) MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Engine.EngineBuildLoop ( terminatingBuildRe BuildRequest misión) MSBUILD: error MSB4014: en Microsoft.Build.BuildEngine.Engine.PostProjectEvaluationRequests (Proyecto proyecto, String [] projectFiles, String [] [] targetNames, BuildPropertyGroup [] globalPropertiesPerProject, IDictionary [] targetOutputsPerProject, BuildSettings buildflags, string [] toolVersions)
¿Se puede construir el proyecto C++ en Visual Studio directamente? – ChrisF
sí, por supuesto Dude :) – mefmef
Simplemente marcando "Amigo";) – ChrisF