Microsoft.Build.BuildEngine Namespace

Represents the MSBuild engine. For more information, see MSBuild.

Classes

BuildItem

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a single item of the project. An item is usually a file on disk, with a type associated with it, and its own item-specific attributes. The list of items is initially specified via XML tags in the project file, although a single item tag can represent multiple items through the use of standard wilcards * and ?. Also, tasks can add new items of various types to the project's item list -- these items don't have any XML representation.

BuildItemGroup

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a collection of items. It may be represented physically by an <ItemGroup> element persisted in the project file, or it may just be a virtual BuildItemGroup (e.g., the evaluated items).

BuildItemGroupCollection

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a collection of persisted <ItemGroup>'s. Each MSBuild project has exactly one BuildItemGroupCollection, which includes all the imported ItemGroups as well as the ones in the main project file.

The implementation of this class is that it's basically a Facade. It just calls into the GroupingCollection within the Project to do it's work. It doesn't maintain any BuildPropertyGroup state on its own.

BuildProperty

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class holds an MSBuild property. This may be a property that is represented in the MSBuild project file by an XML element, or it may not be represented in any real XML file (e.g., global properties, environment properties, etc.)

BuildPropertyGroup

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

A BuildPropertyGroup is a collection of BuildProperty objects. This could be represented by a persisted <PropertyGroup> element in the project file, or it could be a virtual collection of properties, such as in the case of global properties, environment variable properties, or the final evaluated properties of a project. These two types of PropertyGroups (persisted and virtual) are handled differently by many of the methods in this class, but in order to reduce the number of concepts for the consumer of the OM, we've merged them into a single class.

BuildPropertyGroupCollection

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a collection of persisted <PropertyGroup>'s. Each MSBuild project has exactly one BuildPropertyGroupCollection, which includes all the imported PropertyGroups as well as the ones in the main project file.

The implementation of this class is that it's basically a Facade. It just calls into the GroupingCollection within the Project to do it's work. It doesn't maintain any BuildPropertyGroup state on its own.

BuildTask

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a single task.

ConfigurableForwardingLogger

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

Logger that forwards events to a central logger (e.g ConsoleLogger) residing on the parent node.

ConsoleLogger

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class implements the default logger that outputs event data to the console (stdout). It is a facade: it creates, wraps and delegates to a kind of BaseConsoleLogger, either SerialConsoleLogger or ParallelConsoleLogger.

DistributedFileLogger

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class will create a text file which will contain the build log for that node

Engine

This class represents the MSBuild engine. In a system of project-to-project dependencies, this class keeps track of the various projects being built, so that we can avoid building the same target in the same project more than once in a given build.

FileLogger

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

A specialization of the ConsoleLogger that logs to a file instead of the console. The output in terms of what is written and how it looks is identical. For example you can log verbosely to a file using the FileLogger while simultaneously logging only high priority events to the console using a ConsoleLogger.

Import

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a single Import element in a project file

ImportCollection

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a collection of all Import elements in a given project file

InternalLoggerException

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This exception is used to wrap an unhandled exception from a logger. This exception aborts the build, and it can only be thrown by the MSBuild engine.

InvalidProjectFileException

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This exception is thrown whenever there is a problem with the user's XML project file. The problem might be semantic or syntactical. The latter would be of a type typically caught by XSD validation (if it was performed by the project writer).

InvalidToolsetDefinitionException

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

Exception subclass that ToolsetReaders should throw.

LocalNode

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class hosts a node class in the child process. It uses shared memory to communicate with the local node provider. Wraps a Node.

LoggerDescription

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class is used to contain information about a logger as a collection of values that can be used to instantiate the logger and can be serialized to be passed between different processes.

Project

This class represents an MSBuild project. It is a container for items, properties, and targets. It can load in project content from in-memory XML or from an XML file, and it can save to an XML file, preserving most whitespace and all XML comments.

All Project objects must be associated with an Engine object, in order to get at the loggers and other shared information. Also, when doing a "build", the Engine needs to keep track of which projects are currently building.

RemoteErrorException

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class is used to wrap exceptions that occur on a different node

SolutionWrapperProject

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class is used to generate an MSBuild wrapper project for a solution file or standalone VC project.

Target

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a single target in its parent project.

TargetCollection

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a collection of persisted <Target>'s. Each MSBuild project has exactly one TargetCollection, which includes all the imported Targets as well as the ones in the main project file.

Toolset

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

Aggregation of a toolset version (eg. "2.0"), tools path, and optional set of associated properties

ToolsetCollection

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

Implementation of ICollection<Toolset> that also supports key-based retrieval by passing the string value of the tools version corresponding with the desired Toolset. NOTE: This collection does not support ICollection<Toolset>'s Remove or Clear methods, and calls to these will generate exceptions.

UsingTask

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a single UsingTask element in a project file

UsingTaskCollection

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class represents a collection of all UsingTask elements in a given project file.

Utilities

This class (and the whole namespace) is deprecated. Please use the classes in these namespaces instead: Microsoft.Build.ConstructionMicrosoft.Build.EvaluationMicrosoft.Build.Execution

This class contains utility methods for the MSBuild engine.

Enums

BuildSettings

Flags for controlling the build.

ProjectLoadSettings

Flags for controlling the project load.

PropertyPosition

The position of a property to be set inside a project file.

ToolsetDefinitionLocations

Flags for controlling the toolset initialization.

Delegates

ColorResetter

Type of delegate used to reset console color.

ColorSetter

Type of delegate used to set console color.

WriteHandler

Delegate to use for writing a string to some location like the console window or the IDE build window.

Remarks

The classes in this namespace are deprecated. Please use the classes in these namespaces instead:

Microsoft.Build.Construction

Microsoft.Build.Evaluation

Microsoft.Build.Execution