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