Compartilhar via


Solution3.SolutionBuild Property

Gets the SolutionBuild object for the solution, which represents the root of the build automation model at the solution level.

Namespace:  EnvDTE90
Assembly:  EnvDTE90 (in EnvDTE90.dll)

Syntax

'Declaration
ReadOnly Property SolutionBuild As SolutionBuild
SolutionBuild SolutionBuild { get; }
property SolutionBuild^ SolutionBuild {
    SolutionBuild^ get ();
}
abstract SolutionBuild : SolutionBuild with get
function get SolutionBuild () : SolutionBuild

Property Value

Type: EnvDTE.SolutionBuild
A SolutionBuild object.

Examples

For information on how to run this add-in code, see How to: Compile and Run the Automation Object Model Code Examples.

Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    PropertiesExample(_applicationObject)
End Sub

Sub PropertiesExample(ByVal dte As DTE2)
    ' This add-in lists the number of build dependencies,
    ' sets the configuration to Release, and builds the solution.
    ' Open a solution in Visual Studio before 
    ' running this example.
    Try
        Dim soln As Solution2 =  _
        CType(_applicationObject.Solution, Solution2)
        Dim solnBld As SolutionBuild3
        solnBld = CType(soln.SolutionBuild, SolutionBuild3)
        Dim bld As BuildDependencies
        bld = solnBld.BuildDependencies
        MsgBox("The project " & bld.Item(1).Project.Name & " has " _
        & bld.Count.ToString() & " build dependencies.")
        MsgBox("Set the configuration to release and build...")
        solnBld.SolutionConfigurations.Item("Release").Activate()
        solnBld.Build()
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
using System.Windows.Forms;
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    ProjectExample((DTE2)_applicationObject);
}

public void ProjectExample(DTE2 dte)
{
    // This add-in sets the configuration to Release and 
    // builds the solution. 
    // Open a solution in 
    // Visual Studio before running this example.
    try
    {
        Solution3 soln = (Solution3)_applicationObject.Solution;
        SolutionBuild2 solnBld = (SolutionBuild2)soln.SolutionBuild;
        BuildDependencies bld = solnBld.BuildDependencies;
        MessageBox.Show("The project " + bld.Item(1).Project.Name 
          + " has " + bld.Count.ToString() + " build dependencies.");
        MessageBox.Show
          ("Set the configuration to release and build...");
        solnBld.SolutionConfigurations.Item("Release").Activate();
        solnBld.Build(true );
    }
    catch(SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

.NET Framework Security

See Also

Reference

Solution3 Interface

EnvDTE90 Namespace

Other Resources

How to: Compile and Run the Automation Object Model Code Examples