Condividi tramite


Metodo SolutionBuild2.BuildProject (String, String, Boolean)

Compila il progetto specificato e le relative dipendenze nel contesto della configurazione di soluzione specificata.

Spazio dei nomi:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Sintassi

'Dichiarazione
Sub BuildProject ( _
    SolutionConfiguration As String, _
    ProjectUniqueName As String, _
    WaitForBuildToFinish As Boolean _
)
void BuildProject(
    string SolutionConfiguration,
    string ProjectUniqueName,
    bool WaitForBuildToFinish
)
void BuildProject(
    String^ SolutionConfiguration, 
    String^ ProjectUniqueName, 
    bool WaitForBuildToFinish
)
abstract BuildProject : 
        SolutionConfiguration:string * 
        ProjectUniqueName:string * 
        WaitForBuildToFinish:bool -> unit 
function BuildProject(
    SolutionConfiguration : String, 
    ProjectUniqueName : String, 
    WaitForBuildToFinish : boolean
)

Parametri

  • SolutionConfiguration
    Tipo: System.String
    Obbligatorio.Il nome della nuova configurazione di soluzione che fornisce il contesto in cui compilare il progetto.
  • ProjectUniqueName
    Tipo: System.String
    Obbligatorio.Il progetto da compilare.
  • WaitForBuildToFinish
    Tipo: System.Boolean
    Facoltativo.Stabilisce se attendere il completamento della compilazione.Se true, si attende il completamento della compilazione, in caso contrario non si attende.

Implementa

SolutionBuild.BuildProject(String, String, Boolean)

Note

Il metodo BuildProject restituisce immediatamente un risultato. Per stabilire quando un'operazione di compilazione di una soluzione è completata, è necessario controllare l'evento OnBuildDone.

Il metodo BuildProject non influisce sull'interfaccia utente per quanto riguarda la modifica della configurazione di soluzione attiva o il progetto selezionato. Se si desidera compilare il progetto relativo alla configurazione di soluzione attiva, utilizzare DTE.SolutionBuild.ActiveConfiguration.Name.

Il metodo BuildProject influisce invece sull'interfaccia utente in base al flag DTE.SuppressUI in quanto si verifica uno sfarfallio della barra di stato e la finestra di output e l'Elenco attività vengono sempre aggiornati.

BuildProject compila il progetto specificato e tutte le relative dipendenze selezionate per essere compilate nella configurazione di soluzione specificata.

Esempi

In questo esempio viene compilato un progetto in modalità di debug. e aprire un progetto nell'ambiente di sviluppo integrato (IDE) Visual Studio.

Per ulteriori informazioni sulla modalità di esecuzione di questo esempio come componente aggiuntivo, vedere Procedura: compilare ed eseguire gli esempi di codice del modello a oggetti di automazione.

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)
    SolutionBuildProjectExample(_applicationObject)
End Sub
Sub SolutionBuildProjectExample(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
        Dim p1 As Project = soln.Projects.Item(1)
        sb = CType(soln.SolutionBuild, SolutionBuild2)
        bld = sb.BuildDependencies
        MsgBox("The project " & bld.Item(1).Project.Name & " has "  _
        & bld.Count.ToString() & " build dependencies.")
        MsgBox("Building the project in debug mode...")
        sb.BuildProject("Debug", p1.FullName, True)
    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;
    SolutionBuildProjectExample(_applicationObject);
}
public void SolutionBuildProjectExample(DTE2 dte)
{
    try
    {
        Solution2 soln = (Solution2)_applicationObject.Solution;
        SolutionBuild2 sb;
        BuildDependencies bld;
        Project p1 = soln.Projects.Item(1);
        // 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("Building the project in debug mode...");
        sb.BuildProject("Debug", p1.FullName,true);
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

SolutionBuild2 Interfaccia

Overload BuildProject

Spazio dei nomi EnvDTE80