SolutionConfiguration2 Interface
Represents information about a particular way to build the solution.
Namespace: EnvDTE80
Assembly: EnvDTE80 (in EnvDTE80.dll)
Syntax
'Declaration
<GuidAttribute("1099AAA6-4169-430D-9F57-0B4C76624B3B")> _
Public Interface SolutionConfiguration2 _
Inherits SolutionConfiguration
'Usage
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
Remarks
For each project SolutionConfiguration also represents which project configuration and platform provide context for the build operation and design-time features in the environment, such as statement completion in the editor.
Examples
This example displays each solution configuration item's name and sets the first item's configuration name to "release". Open a project in the Visual Studio integrated development environment (IDE) before running this add-in.
For more information about how to run this example as an add-in, see How to: Compile and Run the Automation Object Model Code Examples.
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());
}
}