Interfaccia SolutionBuild2
Rappresenta l'oggetto radice del modello di automazione della compilazione a livello di soluzione.
Spazio dei nomi: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Sintassi
'Dichiarazione
<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
Il tipo SolutionBuild2 espone i seguenti membri.
Proprietà
Nome | Descrizione | |
---|---|---|
ActiveConfiguration | Ottiene l'oggetto SolutionConfiguration attivo. | |
BuildDependencies | Ottiene una raccolta BuildDependencies che consente di specificare le relazioni di dipendenza tra i progetti. | |
BuildState | Ottiene un valore che indica se una compilazione è stata avviata nella sessione corrente dell'ambiente, se una compilazione è attualmente in corso o se una compilazione è stata completata. | |
DTE | Ottiene l'oggetto estensibilità di primo livello. | |
LastBuildInfo | Ottiene il numero di progetti la cui compilazione ha avuto esito negativo. | |
LastPublishInfo | Ottiene il numero di elementi pubblicati correttamente. | |
Parent | Ottiene l'oggetto padre immediato di un oggetto SolutionBuild. | |
PublishState | Ottiene lo stato di un'operazione di pubblicazione. | |
SolutionConfigurations | Ottiene una raccolta di oggetti SolutionConfiguration. | |
StartupProjects | Ottiene o imposta i nomi di progetti che rappresentano punti di ingresso per l'applicazione. |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
Build | Comporta l'avvio della compilazione della configurazione di soluzione attiva. | |
BuildProject | Compila il progetto specificato e le relative dipendenze nel contesto della configurazione di soluzione specificata. | |
Clean | Elimina tutti i file di supporto generati dal compilatore per i progetti contrassegnati. | |
Debug | Avvia il debug della soluzione. | |
Deploy | Comporta la distribuzione di ogni progetto contrassegnato per la distribuzione nella configurazione di soluzione attiva. | |
DeployProject | Distribuisce un progetto. | |
Publish | Avvia un'operazione di pubblicazione. | |
PublishProject | Pubblica un progetto. | |
Run | Comporta l'esecuzione della configurazione di soluzione attiva. |
In alto
Note
L'oggetto SolutionBuild consente di accedere a tutte le configurazioni della soluzione e alle relative proprietà, alle dipendenze di compilazione del progetto e ai progetti di avvio.
L'oggetto corrispondente all'oggetto SolutionBuild a livello degli elementi del progetto è l'oggetto ConfigurationManager.
Esempi
In questo esempio il primo elemento della configurazione della soluzione viene impostato su "Release" e viene quindi compilata la soluzione. 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)
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);
}
}