Share via


SolutionConfiguration2 인터페이스

업데이트: 2007년 11월

특별한 솔루션 빌드 방법에 대한 정보를 표시합니다.

네임스페이스:  EnvDTE80
어셈블리:  EnvDTE80(EnvDTE80.dll)

구문

<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

설명

SolutionConfiguration은 또한 편집기에서의 문 완료와 같이 해당 환경에서 각 프로젝트에 대해 빌드 작업과 디자인 타임 기능의 컨텍스트를 제공하는 프로젝트 구성 및 플랫폼을 표시합니다.

예제

이 예제에서는 각 솔루션 구성 항목의 이름을 표시하고 첫 번째 항목의 구성 이름을 "release"로 설정합니다. 이 추가 기능을 실행하기 전에 Visual Studio IDE(통합 개발 환경)에서 프로젝트를 엽니다.

이 예제를 추가 기능으로 실행하는 방법에 대한 자세한 내용은 방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행을 참조하십시오.

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

참고 항목

참조

SolutionConfiguration2 멤버

EnvDTE80 네임스페이스