Sdílet prostřednictvím


SolutionBuild2 – rozhraní

Představuje kořenový adresář automatizace modelu sestavení na úrovni řešení.

Obor názvů:  EnvDTE80
Sestavení:  EnvDTE80 (v EnvDTE80.dll)

Syntaxe

'Deklarace
<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 zveřejňuje následující členy.

Vlastnosti

  Název Popis
Veřejná vlastnost ActiveConfiguration Načte aktuálně aktivní SolutionConfiguration objektu.
Veřejná vlastnost BuildDependencies Získává BuildDependencies kolekci, která umožňuje určit, které projekty závisí na které jiné projekty.
Veřejná vlastnost BuildState Získá, zda nové sestavení někdy byla spuštěna v aktuální relaci prostředí, zda právě probíhá nové sestavení nebo zda byl dokončen sestavení.
Veřejná vlastnost DTE Načtení objektu nejvyšší úrovně rozšiřitelnosti.
Veřejná vlastnost LastBuildInfo Získá počet projektů, které se nepodařilo vytvořit.
Veřejná vlastnost LastPublishInfo Získá číslo položky, které byly úspěšně publikovány.
Veřejná vlastnost Parent Získá bezprostřední nadřízený objekt SolutionBuild objektu.
Veřejná vlastnost PublishState Získá stav operace publikovat.
Veřejná vlastnost SolutionConfigurations Získá kolekce SolutionConfiguration objektů.
Veřejná vlastnost StartupProjects Získá nebo nastaví názvy projektů, které jsou vstupní body aplikace.

Nahoru

Metody

  Název Popis
Veřejná metoda Build Způsobí, že konfigurace aktivní řešení začít budovy.
Veřejná metoda BuildProject Vytvoří zadaný projekt a jeho závislosti v kontextu Zadaná konfigurace řešení.
Veřejná metoda Clean Odstraní všechny soubory generované kompilátor podporu pro označené projekty.
Veřejná metoda Debug Spustí ladění řešení.
Veřejná metoda Deploy Způsobí, že každý projekt aktivní řešení konfigurace, která je označena pro nasazení nasazení.
Veřejná metoda DeployProject Nasadí projektu.
Veřejná metoda Publish Inicializuje operaci publikování.
Veřejná metoda PublishProject Publikuje projekt.
Veřejná metoda Run Způsobí, že konfigurace aktivní řešení spustit.

Nahoru

Poznámky

SolutionBuild Objekt poskytuje přístup do všech konfigurací řešení a jejich vlastnosti, projektových závislostí sestavení a spouštění projektů.

Protějškem SolutionBuild je objekt na úrovni projektu a zboží ConfigurationManager objektu.

Příklady

V tomto příkladu nastaví první položku konfigurace řešení "vydání" a potom vytvoří řešení.Otevřete projekt v Visual Studio integrované vývojové prostředí (IDE) před spuštěním tohoto doplňku.

Další informace o tom, jak spustit jako doplněk příklad viz Postupy: Kompilace a spuštění příkladů kódu objektu automatizace.

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

Viz také

Referenční dokumentace

EnvDTE80 – obor názvů