SolutionBuild2 (Interfaz)

Representa la raíz del modelo de automatización de compilación en el nivel de solución.

Espacio de nombres:  EnvDTE80
Ensamblado:  EnvDTE80 (en EnvDTE80.dll)

Sintaxis

'Declaración
<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

El tipo SolutionBuild2 expone los siguientes miembros.

Propiedades

  Nombre Descripción
Propiedad pública ActiveConfiguration (Se hereda de SolutionBuild).
Propiedad pública ActiveConfiguration Obtiene el objeto SolutionConfiguration activo.
Propiedad pública BuildDependencies (Se hereda de SolutionBuild).
Propiedad pública BuildDependencies Obtiene una colección BuildDependencies que le permite especificar qué proyectos dependen de otros proyectos.
Propiedad pública BuildState (Se hereda de SolutionBuild).
Propiedad pública BuildState Indica si se ha iniciado alguna compilación en la sesión del entorno actual, si hay alguna compilación en curso o si ha finalizado alguna compilación.
Propiedad pública DTE (Se hereda de SolutionBuild).
Propiedad pública DTE Obtiene el objeto de extensibilidad de nivel superior.
Propiedad pública LastBuildInfo (Se hereda de SolutionBuild).
Propiedad pública LastBuildInfo Obtiene el número de proyectos que no se han podido compilar.
Propiedad pública LastPublishInfo Obtiene el número de elementos que se publicaron correctamente.
Propiedad pública Parent (Se hereda de SolutionBuild).
Propiedad pública Parent Obtiene el objeto primario inmediato de un objeto SolutionBuild.
Propiedad pública PublishState Obtiene el estado de una operación de publicación.
Propiedad pública SolutionConfigurations (Se hereda de SolutionBuild).
Propiedad pública SolutionConfigurations Obtiene una colección de objetos SolutionConfiguration.
Propiedad pública StartupProjects (Se hereda de SolutionBuild).
Propiedad pública StartupProjects Obtiene o establece los nombres de proyectos que son puntos de entrada para la aplicación.

Arriba

Métodos

  Nombre Descripción
Método público Build(Boolean) (Se hereda de SolutionBuild).
Método público Build(Boolean) Hace que se compile la configuración de soluciones activa.
Método público BuildProject(String, String, Boolean) (Se hereda de SolutionBuild).
Método público BuildProject(String, String, Boolean) Compila el proyecto especificado y sus dependencias en el contexto de la configuración de solución especificada.
Método público Clean(Boolean) (Se hereda de SolutionBuild).
Método público Clean(Boolean) Elimina todos los archivos de compatibilidad generados por el compilador de los proyectos marcados.
Método público Debug() (Se hereda de SolutionBuild).
Método público Debug() Inicia la depuración de la solución.
Método público Deploy(Boolean) (Se hereda de SolutionBuild).
Método público Deploy(Boolean) Permite la implementación de todos los proyectos de la configuración de soluciones activa marcados para implementación.
Método público DeployProject Implementa un proyecto.
Método público Publish Inicia una operación de publicación.
Método público PublishProject Publica un proyecto.
Método público Run() (Se hereda de SolutionBuild).
Método público Run() Hace que se ejecute la configuración de soluciones activa.

Arriba

Comentarios

El objeto SolutionBuild proporciona acceso a todas las configuraciones de soluciones y a sus propiedades, a las dependencias de compilación del proyecto y a los proyectos de inicio.

El homólogo al objeto SolutionBuild en el nivel de proyecto y de elemento es el objeto ConfigurationManager.

Ejemplos

En este ejemplo se establece el primer elemento de las configuraciones de soluciones para "liberar" y, a continuación, compilar la solución.Abra un proyecto en el entorno de desarrollo integrado (IDE) de Visual Studio antes de ejecutar este complemento.

Para obtener más información sobre cómo ejecutar este ejemplo como un complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.

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

Vea también

Referencia

EnvDTE80 (Espacio de nombres)