SolutionConfiguration2 介面

代表建置方案的特定方式相關資訊。

命名空間:  EnvDTE80
組件:  EnvDTE80 (在 EnvDTE80.dll 中)

語法

'宣告
<GuidAttribute("1099AAA6-4169-430D-9F57-0B4C76624B3B")> _
Public Interface SolutionConfiguration2 _
    Inherits SolutionConfiguration
[GuidAttribute("1099AAA6-4169-430D-9F57-0B4C76624B3B")]
public interface SolutionConfiguration2 : SolutionConfiguration
[GuidAttribute(L"1099AAA6-4169-430D-9F57-0B4C76624B3B")]
public interface class SolutionConfiguration2 : SolutionConfiguration
[<GuidAttribute("1099AAA6-4169-430D-9F57-0B4C76624B3B")>]
type SolutionConfiguration2 =  
    interface
        interface SolutionConfiguration
    end
public interface SolutionConfiguration2 extends SolutionConfiguration

SolutionConfiguration2 型別會公開下列成員。

屬性

  名稱 說明
公用屬性 Collection (繼承自 SolutionConfiguration)。
公用屬性 Collection 取得 SolutionConfigurations 集合,此集合包含支援此屬性的 SolutionConfiguration 物件。
公用屬性 DTE (繼承自 SolutionConfiguration)。
公用屬性 DTE 取得最上層的擴充性物件。
公用屬性 Name (繼承自 SolutionConfiguration)。
公用屬性 Name 取得物件名稱。
公用屬性 PlatformName 取得組態的目標平台 CPU。
公用屬性 SolutionContexts (繼承自 SolutionConfiguration)。
公用屬性 SolutionContexts 取得 SolutionContext 物件的集合。

回頁首

方法

  名稱 說明
公用方法 Activate() (繼承自 SolutionConfiguration)。
公用方法 Activate() 將焦點移至目前的項目。
公用方法 Delete() (繼承自 SolutionConfiguration)。
公用方法 Delete() SolutionConfiguration 物件從集合中移除。

回頁首

備註

每個 SolutionConfiguration 專案同時還代表,提供環境中建置作業內容和設計階段功能內容的專案組態與平台,例如編輯器內的陳述式完成。

範例

這個範例會顯示每個方案組態項目的名稱,並將第一個項目的組態名稱設為「發行」。 執行這個增益集之前,先開啟 Visual Studio 整合式開發環境 (IDE) 中的專案。

如需如何像執行增益集一般,執行這個範例的詳細資訊,請參閱 HOW TO:編譯和執行 Automation 物件模型程式碼範例

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

請參閱

參考

EnvDTE80 命名空間