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 | |
---|---|---|
ActiveConfiguration | (Von SolutionBuild geerbt.) | |
ActiveConfiguration | Ruft das derzeit aktive SolutionConfiguration-Objekt ab. | |
BuildDependencies | (Von SolutionBuild geerbt.) | |
BuildDependencies | Ruft eine BuildDependencies-Auflistung ab, mit der Sie die Abhängigkeitsbeziehungen zwischen Projekten genau angeben können. | |
BuildState | (Von SolutionBuild geerbt.) | |
BuildState | Ruft ab, ob in der aktuellen Umgebungssitzung schon einmal ein Buildvorgang gestartet wurde, gerade ausgeführt wird oder abgeschlossen wurde. | |
DTE | (Von SolutionBuild geerbt.) | |
DTE | Ruft das Erweiterbarkeitsobjekt der obersten Ebene ab. | |
LastBuildInfo | (Von SolutionBuild geerbt.) | |
LastBuildInfo | Ruft die Anzahl der Projekte ab, die nicht erstellt werden konnten. | |
LastPublishInfo | Ruft die Anzahl von Elementen ab, die erfolgreich veröffentlicht wurden. | |
Parent | (Von SolutionBuild geerbt.) | |
Parent | Ruft das unmittelbar übergeordnete Objekt eines SolutionBuild-Objekts ab. | |
PublishState | Ruft den Zustand eines Veröffentlichungsvorgangs ab. | |
SolutionConfigurations | (Von SolutionBuild geerbt.) | |
SolutionConfigurations | Ruft eine Auflistung von SolutionConfiguration-Objekten ab. | |
StartupProjects | (Von SolutionBuild geerbt.) | |
StartupProjects | Ruft die Namen von Projekten ab, die Einstiegspunkte für die Anwendung sind, oder legt diese fest. |
Zum Seitenanfang
Methoden
Name | Beschreibung | |
---|---|---|
Build(Boolean) | (Von SolutionBuild geerbt.) | |
Build(Boolean) | Veranlasst die Erstellung der aktiven Projektmappenkonfiguration. | |
BuildProject(String, String, Boolean) | (Von SolutionBuild geerbt.) | |
BuildProject(String, String, Boolean) | Erstellt das angegebene Projekt und die zugeordneten Abhängigkeiten im Kontext der angegebenen Projektmappenkonfiguration. | |
Clean(Boolean) | (Von SolutionBuild geerbt.) | |
Clean(Boolean) | Löscht alle vom Compiler erstellten Supportdateien für markierte Projekte. | |
Debug() | (Von SolutionBuild geerbt.) | |
Debug() | Startet das Debuggen der Projektmappe. | |
Deploy(Boolean) | (Von SolutionBuild geerbt.) | |
Deploy(Boolean) | Löst die Bereitstellung aller Projekte in der aktiven Projektmappenkonfiguration aus, die zur Bereitstellung markiert sind. | |
DeployProject | Stellt ein Projekt bereit. | |
Publish | Startet einen Veröffentlichungsvorgang. | |
PublishProject | Veröffentlicht ein Projekt. | |
Run() | (Von SolutionBuild geerbt.) | |
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);
}
}