次の方法で共有


SolutionBuild2 インターフェイス

ソリューション レベルでのビルド オートメーション モデルのルートを表します。

名前空間:  EnvDTE80
アセンブリ:  EnvDTE80 (EnvDTE80.dll 内)

構文

'宣言
<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

SolutionBuild2 型で公開されるメンバーは以下のとおりです。

プロパティ

  名前 説明
パブリック プロパティ ActiveConfiguration (SolutionBuild から継承されます。)
パブリック プロパティ ActiveConfiguration 現在アクティブな SolutionConfiguration オブジェクトを取得します。
パブリック プロパティ BuildDependencies (SolutionBuild から継承されます。)
パブリック プロパティ BuildDependencies プロジェクト間の依存関係を指定できる BuildDependencies コレクションを取得します。
パブリック プロパティ BuildState (SolutionBuild から継承されます。)
パブリック プロパティ BuildState 現在の環境セッションでビルドが開始されたかどうか、現在ビルド中かどうか、またはビルドが完了したかどうかを取得します。
パブリック プロパティ DTE (SolutionBuild から継承されます。)
パブリック プロパティ DTE トップレベルの機能拡張オブジェクトを取得します。
パブリック プロパティ LastBuildInfo (SolutionBuild から継承されます。)
パブリック プロパティ LastBuildInfo ビルドに失敗したプロジェクトの数を取得します。
パブリック プロパティ LastPublishInfo 正常に発行された項目の数を取得します。
パブリック プロパティ Parent (SolutionBuild から継承されます。)
パブリック プロパティ Parent SolutionBuild オブジェクトのすぐ上の親オブジェクトを取得します。
パブリック プロパティ PublishState 発行操作の状態を取得します。
パブリック プロパティ SolutionConfigurations (SolutionBuild から継承されます。)
パブリック プロパティ SolutionConfigurations SolutionConfiguration オブジェクトのコレクションを取得します。
パブリック プロパティ StartupProjects (SolutionBuild から継承されます。)
パブリック プロパティ StartupProjects アプリケーションのエントリ ポイントであるプロジェクトの名前を取得または設定します。

このページのトップへ

メソッド

  名前 説明
パブリック メソッド Build(Boolean) (SolutionBuild から継承されます。)
パブリック メソッド Build(Boolean) アクティブなソリューション構成のビルドを開始します。
パブリック メソッド BuildProject(String, String, Boolean) (SolutionBuild から継承されます。)
パブリック メソッド BuildProject(String, String, Boolean) 指定されたソリューション構成のコンテキストで、指定されたプロジェクトとその依存関係をビルドします。
パブリック メソッド Clean(Boolean) (SolutionBuild から継承されます。)
パブリック メソッド Clean(Boolean) マークしたプロジェクトについて、コンパイラにより生成されたサポート ファイルをすべて削除します。
パブリック メソッド Debug() (SolutionBuild から継承されます。)
パブリック メソッド Debug() ソリューションのデバッグを開始します。
パブリック メソッド Deploy(Boolean) (SolutionBuild から継承されます。)
パブリック メソッド Deploy(Boolean) 配置用にマークされた、アクティブなソリューション構成に含まれる各プロジェクトを配置します。
パブリック メソッド DeployProject プロジェクトを配置します。
パブリック メソッド Publish 発行操作を実行します。
パブリック メソッド PublishProject プロジェクトを発行します。
パブリック メソッド Run() (SolutionBuild から継承されます。)
パブリック メソッド Run() アクティブなソリューション構成を実行します。

このページのトップへ

解説

SolutionBuild オブジェクトは、すべてのソリューション構成およびその構成のプロパティ、プロジェクトのビルド依存関係、スタートアップ プロジェクトにアクセスできます。

プロジェクトおよびアイテムのレベルで SolutionBuild オブジェクトに相当するオブジェクトは、ConfigurationManager オブジェクトです。

この例では、最初のソリューション構成項目を "release" に設定して、ソリューションをビルドします。 このアドインを実行する前に、Visual Studio 統合開発環境 (IDE: integrated development environment) でプロジェクトを開きます。

このアドインの例を実行する方法の詳細については、「方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する」を参照してください。

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

参照

参照

EnvDTE80 名前空間