Interfaccia SolutionConfiguration2
Aggiornamento: novembre 2007
Fornisce informazioni su una particolare modalità di generazione della soluzione.
Spazio dei nomi: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Sintassi
<GuidAttribute("1099AAA6-4169-430D-9F57-0B4C76624B3B")> _
Public Interface SolutionConfiguration2 _
Implements SolutionConfiguration
Dim instance As SolutionConfiguration2
[GuidAttribute("1099AAA6-4169-430D-9F57-0B4C76624B3B")]
public interface SolutionConfiguration2 : SolutionConfiguration
[GuidAttribute(L"1099AAA6-4169-430D-9F57-0B4C76624B3B")]
public interface class SolutionConfiguration2 : SolutionConfiguration
public interface SolutionConfiguration2 extends SolutionConfiguration
Note
Per ogni progetto l'oggetto SolutionConfiguration specifica anche quale piattaforma e configurazione di progetto forniscono il contesto per l'operazione di generazione, nonché le funzionalità dell'ambiente in fase di progettazione, ad esempio il completamento di istruzioni nell'editor.
Esempi
In questo esempio viene visualizzato il nome di ciascun elemento della configurazione della soluzione e il nome del primo di tali elementi viene impostato su "Release". Prima di eseguire questo componente aggiuntivo, 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)
SolutionConfigurationExample(_applicationObject)
End Sub
Sub SolutionConfigurationExample(ByVal dte As DTE2)
Try
Dim builder As SolutionBuild = _
_applicationObject.Solution.SolutionBuild
Dim config As SolutionConfiguration2
config = CType(builder.ActiveConfiguration _
, SolutionConfiguration2)
Dim i As Integer
Dim aStr As String
aStr = ""
For i = 1 To config.SolutionContexts.Count
aStr = aStr & "The configuration item number " & i.ToString() _
& "'s name is: " & config.SolutionContexts. _
Item(i).ConfigurationName.ToString() & vbCr
Next
MsgBox("The configuration names per item are:" & vbCr & aStr)
MsgBox("Change the configuration of item 1 to 'Release'...")
config.SolutionContexts.Item(1).ConfigurationName = "Release"
MsgBox("The solution configuration name for _
configuration item 1 is now: " & _
config.SolutionContexts.Item(1).ConfigurationName.ToString())
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;
SolutionConfigurationExample(_applicationObject);
}
public void SolutionConfigurationExample(DTE2 dte)
{
try
{
SolutionBuild builder =
_applicationObject.Solution.SolutionBuild;
SolutionConfiguration2 config;
config = (SolutionConfiguration2)builder.ActiveConfiguration;
int i;
String aStr = null;
for (i = 1; i <= config.SolutionContexts.Count;i++ )
{
aStr = aStr + "The configuration item number " + i.ToString()
+ "'s name is: " +
config.SolutionContexts.Item(i).ConfigurationName.ToString() + "\n";
}
MessageBox.Show("The configuration names per item are:" + "\n"
+ aStr);
MessageBox.Show("Change the configuration of item
1 to 'Release'...");
config.SolutionContexts.Item(1).ConfigurationName = "Release";
MessageBox.Show("The solution configuration name
for configuration item 1 is now: " +
config.SolutionContexts.Item(1).ConfigurationName.ToString());
}
catch(SystemException ex)
{
MessageBox.Show(ex.ToString());
}
}