PDA

View Full Version : Interop.VisBuildSvr.dll


rmaines
08-29-2006, 06:49 PM
We have a c# app which acts as a "Build Launcher" to our build projects. We have a master.bld executing a chain.bld. The chain.bld then executes several child.bld's.

When the master.bld is executed from the command-line, we see the "echoing" of the output from the child.bld's. However, when executed from our c# app, we only see the step of executing the chain.bld. It's not showing the steps in the child.bld. I see there is an echo property off of the build object but setting it to "true" does nothing. Is this property supposed to work, or is there some other way I can get the echoing to work?

kinook
08-30-2006, 07:04 AM
By default, VisBuildCmd captures and displays console output of any child (grandchild, etc.) processes that the build starts.

When using the VBP object model, no output is automatically captured (there is no console to speak/capture output from/echo to when invoked in this way). Events are fired for the steps built in the parent .bld file, which can be logged and apparently is what you're referring to? There is no provision for automatic capture/echoing of child project output.

One option would be to launch VisBuildCmd from your launcher rather than using the object model:
http://www.visualbuild.com/Manual/visbuildprosample.htm
http://www.visualbuild.com/Manual/objectmodelsample.htm

Another would be to use XML logging (having all projects log to the same file) and generate/display an HTML log at the end of the build, which would contain output from all levels of child projects.
http://www.visualbuild.com/Manual/loggingsample.htm
http://www.visualbuild.com/Manual/transformlogaction.htm