Freigeben über


SolutionBuild2-Schnittstelle

Stellt den Stamm des Build-Automatisierungsmodells auf Projektmappenebene dar.

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

Syntax

'Declaration
<GuidAttribute("C2516E4B-5D69-459D-B539-C95A71C4FA3D")> _
Public Interface SolutionBuild2 _
    Inherits SolutionBuild
[GuidAttribute("C2516E4B-5D69-459D-B539-C95A71C4FA3D")]
public interface SolutionBuild2 : SolutionBuild
[GuidAttribute(L"C2516E4B-5D69-459D-B539-C95A71C4FA3D")]
public interface class SolutionBuild2 : SolutionBuild
[<GuidAttribute("C2516E4B-5D69-459D-B539-C95A71C4FA3D")>]
type SolutionBuild2 =  
    interface
        interface SolutionBuild
    end
public interface SolutionBuild2 extends SolutionBuild

Der SolutionBuild2-Typ macht die folgenden Member verfügbar.

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft ActiveConfiguration (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft ActiveConfiguration Ruft das derzeit aktive SolutionConfiguration-Objekt ab.
Öffentliche Eigenschaft BuildDependencies (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft BuildDependencies Ruft eine BuildDependencies-Auflistung ab, mit der Sie die Abhängigkeitsbeziehungen zwischen Projekten genau angeben können.
Öffentliche Eigenschaft BuildState (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft BuildState Ruft ab, ob in der aktuellen Umgebungssitzung schon einmal ein Buildvorgang gestartet wurde, gerade ausgeführt wird oder abgeschlossen wurde.
Öffentliche Eigenschaft DTE (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft DTE Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab.
Öffentliche Eigenschaft LastBuildInfo (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft LastBuildInfo Ruft die Anzahl der Projekte ab, die nicht erstellt werden konnten.
Öffentliche Eigenschaft LastPublishInfo Ruft die Anzahl von Elementen ab, die erfolgreich veröffentlicht wurden.
Öffentliche Eigenschaft Parent (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft Parent Ruft das unmittelbar übergeordnete Objekt eines SolutionBuild-Objekts ab.
Öffentliche Eigenschaft PublishState Ruft den Zustand eines Veröffentlichungsvorgangs ab.
Öffentliche Eigenschaft SolutionConfigurations (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft SolutionConfigurations Ruft eine Auflistung von SolutionConfiguration-Objekten ab.
Öffentliche Eigenschaft StartupProjects (Von SolutionBuild geerbt.)
Öffentliche Eigenschaft StartupProjects Ruft die Namen von Projekten ab, die Einstiegspunkte für die Anwendung sind, oder legt diese fest.

Zum Seitenanfang

Methoden

  Name Beschreibung
Öffentliche Methode Build(Boolean) (Von SolutionBuild geerbt.)
Öffentliche Methode Build(Boolean) Veranlasst die Erstellung der aktiven Projektmappenkonfiguration.
Öffentliche Methode BuildProject(String, String, Boolean) (Von SolutionBuild geerbt.)
Öffentliche Methode BuildProject(String, String, Boolean) Erstellt das angegebene Projekt und die zugeordneten Abhängigkeiten im Kontext der angegebenen Projektmappenkonfiguration.
Öffentliche Methode Clean(Boolean) (Von SolutionBuild geerbt.)
Öffentliche Methode Clean(Boolean) Löscht alle vom Compiler erstellten Supportdateien für markierte Projekte.
Öffentliche Methode Debug() (Von SolutionBuild geerbt.)
Öffentliche Methode Debug() Startet das Debuggen der Projektmappe.
Öffentliche Methode Deploy(Boolean) (Von SolutionBuild geerbt.)
Öffentliche Methode Deploy(Boolean) Löst die Bereitstellung aller Projekte in der aktiven Projektmappenkonfiguration aus, die zur Bereitstellung markiert sind.
Öffentliche Methode DeployProject Stellt ein Projekt bereit.
Öffentliche Methode Publish Startet einen Veröffentlichungsvorgang.
Öffentliche Methode PublishProject Veröffentlicht ein Projekt.
Öffentliche Methode Run() (Von SolutionBuild geerbt.)
Öffentliche Methode Run() Löst die Ausführung der aktiven Projektmappenkonfiguration aus.

Zum Seitenanfang

Hinweise

Mithilfe des SolutionBuild-Objekts kann auf alle Projektmappenkonfigurationen und deren Eigenschaften sowie auf die Buildabhängigkeiten der Projekte und die Startprojekte zugegriffen werden.

Die Entsprechung zum SolutionBuild-Objekt auf Projekt- und Elementebene ist das ConfigurationManager-Objekt.

Beispiele

In diesem Beispiel wird das erste Projektmappenkonfigurationselement auf "Release" festgelegt, und anschließend wird die Projektmappe erstellt. Öffnen Sie vor dem Ausführen des Add-Ins in der integrierten Entwicklungsumgebung (Integrated Development Environment – IDE) von Visual Studio ein Projekt.

Weitere Informationen zum Ausführen dieses Beispiels als Add-In finden Sie unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.

Imports EnvDTE
Imports EnvDTE80
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)
    SolutionBuild2BuildExample(_applicationObject)
End Sub
Sub SolutionBuild2BuildExample(ByVal dte As DTE2)
    ' Open a solution in Visual Studio before running this example.
    Try
        Dim soln As Solution2 = CType(_applicationObject.Solution, _
        Solution2)
        Dim sb As SolutionBuild2
        Dim bld As BuildDependencies
        sb = CType(soln.SolutionBuild, SolutionBuild2)
        bld = sb.BuildDependencies
        MsgBox("The project " & bld.Item(1).Project.Name & " has "  _
        & bld.Count.ToString() & " build dependencies.")
        MsgBox("Set the configuration to release and build...")
        sb.SolutionConfigurations.Item("Release").Activate()
        sb.Build()
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
public void OnConnection(object application, 
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    SolutionBuild2BuildExample(_applicationObject);
}
public void SolutionBuild2BuildExample(DTE2 dte)
{
    try
    {
        Solution2 soln = (Solution2)_applicationObject.Solution;
        SolutionBuild2 sb;
        BuildDependencies bld;
        // Open a solution in Visual Studio before 
        // running this example.
        sb = (SolutionBuild2)soln.SolutionBuild;
        bld = sb.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...");
        sb.SolutionConfigurations.Item("Release").Activate();
        sb.Build(true);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Siehe auch

Referenz

EnvDTE80-Namespace