Udostępnij za pośrednictwem


Interfejs SolutionBuild2

Reprezentuje katalog główny model automatyzacji kompilacji na szczeblu roztworu.

Przestrzeń nazw:  EnvDTE80
Zestaw:  EnvDTE80 (w EnvDTE80.dll)

Składnia

'Deklaracja
<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

Typ SolutionBuild2 uwidacznia następujące elementy członkowskie.

Właściwości

  Nazwa Opis
Właściwość publiczna ActiveConfiguration Pobiera aktualnie aktywnych SolutionConfiguration obiektu.
Właściwość publiczna BuildDependencies Pobiera BuildDependencies kolekcji, która pozwala określić, które projekty zależą od których inne projekty.
Właściwość publiczna BuildState Pobiera kompilacji kiedykolwiek rozpoczęto w bieżącej sesji środowiska czy kompilacji jest obecnie w toku lub czy kompilacji zostały zakończone.
Właściwość publiczna DTE Pobiera obiekt rozszerzalności najwyższego poziomu.
Właściwość publiczna LastBuildInfo Pobiera liczby projektów, które nie może zbudować.
Właściwość publiczna LastPublishInfo Zwraca liczbę elementów, które zostały pomyślnie opublikowane.
Właściwość publiczna Parent Zwraca obiekt nadrzędny natychmiastowe z SolutionBuild obiektu.
Właściwość publiczna PublishState Pobiera stan operacji publikowania.
Właściwość publiczna SolutionConfigurations Zwraca kolekcję SolutionConfiguration obiektów.
Właściwość publiczna StartupProjects Zwraca lub ustawia nazwy projektów, które są punkty wejścia dla aplikacji.

Początek

Metody

  Nazwa Opis
Metoda publiczna Build Powoduje, że aktywne solution configuration zacząć budynku.
Metoda publiczna BuildProject Tworzy określony projekt i jego zależności w kontekście określona konfiguracja rozwiązania.
Metoda publiczna Clean Usuwa wszystkie pliki obsługi generowanych przez kompilator zaznaczone projekty.
Metoda publiczna Debug Uruchamia debugowanie roztworu.
Metoda publiczna Deploy Powoduje, że każdy projekt w konfiguracji aktywny roztwór jest oznaczony do wdrażania wdrożyć.
Metoda publiczna DeployProject Rozmieszcza projektu.
Metoda publiczna Publish Inicjuje operację Publikuj.
Metoda publiczna PublishProject Publikuje projekt.
Metoda publiczna Run Powoduje, że aktywne solution configuration do wykonania.

Początek

Uwagi

SolutionBuild Obiektu zapewnia dostęp do wszystkich konfiguracji rozwiązania i ich właściwości, zależności budowania projektu i uruchamiania projektów.

Odpowiednik SolutionBuild obiektu na poziomie projektu i elementu jest ConfigurationManager obiektu.

Przykłady

W tym przykładzie ustawia pierwszy element konfiguracji rozwiązania "zwolnienie" i następnie konstruuje roztworu.Otwórz projekt w Visual Studio zintegrowane środowisko dewelopowania (IDE) przed uruchomieniem tego dodatku.

Aby uzyskać więcej informacji o sposobach uruchamiania w tym przykładzie jako dodatek, zobacz Porady: kompilowanie i uruchamianie kodu modelu obiektów automatyzacji — przykłady.

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);
    }
}

Zobacz też

Informacje

Przestrzeń nazw EnvDTE80