Logging Build messages with MSBuild 4.0

James picture James · Oct 21, 2010 · Viewed 7.4k times · Source

I am using MsBuild 4.0 in code, like so:

 var globalProperties = new Dictionary<string, string>();
 var buildRequest = new BuildRequestData(solutionPathAbsolute, globalProperties, null, new string[] { "Build" }, null);
 var pc = new ProjectCollection();

 var result = BuildManager.DefaultBuildManager.Build(new BuildParameters(pc), buildRequest);

Note how this API is completely different from MsBuild 3.5... How does one hook in a logger to recieve detailed build messages with the new API?

Answer

heavyd picture heavyd · Oct 21, 2010

The BeginBuild method on the BuildManager allows you to pass in a set of BuildParameters which includes a Loggers property.