Compartilhar via


Interface SolutionBuild2

Representa a raiz do modelo de automação de compilação no nível da solução.

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

Sintaxe

'Declaração
<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

O tipo SolutionBuild2 expõe os membros a seguir.

Propriedades

  Nome Descrição
Propriedade pública ActiveConfiguration Obtém o ativo no momento SolutionConfiguration objeto.
Propriedade pública BuildDependencies Obtém um BuildDependencies coleção que permite que você especifique quais projetos dependem de quais outros projetos.
Propriedade pública BuildState Obtém uma compilação já foi iniciada na sessão atual do ambiente, se uma compilação está em andamento ou se uma compilação foi concluída.
Propriedade pública DTE Obtém o objeto de extensibilidade de nível superior.
Propriedade pública LastBuildInfo Obtém o número de projetos que não conseguiu construir.
Propriedade pública LastPublishInfo Obtém o número de itens que foram publicados com êxito.
Propriedade pública Parent Obtém o objeto pai imediato de um SolutionBuild objeto.
Propriedade pública PublishState Obtém o estado de uma operação de publicação.
Propriedade pública SolutionConfigurations Obtém uma coleção de SolutionConfiguration objetos.
Propriedade pública StartupProjects Obtém ou define os nomes dos projetos que são pontos de entrada para o aplicativo.

Superior

Métodos

  Nome Descrição
Método público Build Faz com que a configuração de solução ativa para começar a construção.
Método público BuildProject Constrói o projeto especificado e suas dependências no contexto da configuração de solução especificada.
Método público Clean Exclui todos os arquivos de suporte gerado pelo compilador para projetos marcados.
Método público Debug Inicia a depuração da solução.
Método público Deploy Faz com que cada projeto na configuração da solução ativa que está marcada para a implantação implantar.
Método público DeployProject Implanta um projeto.
Método público Publish Inicia uma operação de publicação.
Método público PublishProject Publica um projeto.
Método público Run Faz com que a configuração de solução ativa executar.

Superior

Comentários

O SolutionBuild objeto fornece acesso a todas as configurações de solução e suas propriedades, as dependências de compilação do projeto e projetos de inicialização.

A contraparte do SolutionBuild o objeto no nível do projeto e de item é o ConfigurationManager objeto.

Exemplos

Este exemplo define o primeiro item de configurações de solução para "liberar" e cria a solução. Abrir um projeto na Visual Studio o ambiente de desenvolvimento integrado (IDE) antes de executar este suplemento.

Para obter mais informações sobre como executar este exemplo como um add-in, consulte Como compilar e executar os exemplos de código do modelo de objeto Automation.

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

Consulte também

Referência

Namespace EnvDTE80