Solution2 インターフェイス
統合開発環境 (IDE: Integrated Development Environment) のすべてのプロジェクトとソリューション全体のプロパティを表します。
名前空間: EnvDTE80
アセンブリ: EnvDTE80 (EnvDTE80.dll 内)
構文
'宣言
<GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")> _
Public Interface Solution2 _
Inherits _Solution
[GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")]
public interface Solution2 : _Solution
[GuidAttribute(L"FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")]
public interface class Solution2 : _Solution
[<GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")>]
type Solution2 =
interface
interface _Solution
end
public interface Solution2 extends _Solution
Solution2 型で公開されるメンバーは以下のとおりです。
プロパティ
名前 | 説明 | |
---|---|---|
AddIns | (_Solution から継承されます。) | |
AddIns | AddIns コレクションを取得します。このコレクションには、ソリューションに関連付けられた現在使用できるすべてのアドインが含まれます。 | |
Count | (_Solution から継承されます。) | |
Count | ソリューション内のプロジェクトの数を示す値を取得します。 | |
DTE | (_Solution から継承されます。) | |
DTE | トップレベルの機能拡張オブジェクトを取得します。 | |
Extender[String] | (_Solution から継承されます。) | |
Extender[String] | 要求された Extender オブジェクトがこのオブジェクトで利用できる場合はそれを取得します。 | |
ExtenderCATID | (_Solution から継承されます。) | |
ExtenderCATID | オブジェクトの Extender カテゴリ ID (CATID) を取得します。 | |
ExtenderNames | (_Solution から継承されます。) | |
ExtenderNames | オブジェクトで使用できる Extender のリストを取得します。 | |
FileName | (_Solution から継承されます。) | |
FileName | インフラストラクチャ。 マイクロソフト内部でのみ使用します。 | |
FullName | (_Solution から継承されます。) | |
FullName | オブジェクトのファイルの完全パスと名前を取得します。 | |
Globals | (_Solution から継承されます。) | |
Globals | Globals オブジェクトを取得します。このオブジェクトには、ソリューション ファイル (.sln)、プロジェクト ファイル、またはユーザーのプロファイル データに保存できる任意の変数値が含まれます。 | |
IsDirty | (_Solution から継承されます。) | |
IsDirty | インフラストラクチャ。 マイクロソフト内部でのみ使用します。 | |
IsOpen | (_Solution から継承されます。) | |
IsOpen | ソリューションが開いているかどうかを示す値を取得します。 | |
Parent | (_Solution から継承されます。) | |
Parent | Solution2 オブジェクトの直接の親オブジェクトを取得します。 | |
Projects | (_Solution から継承されます。) | |
Projects | 現在ソリューションに存在するプロジェクトのコレクションを取得します。 | |
Properties | (_Solution から継承されます。) | |
Properties | Solution2 オブジェクトに属するすべてのプロパティのコレクションを取得します。 | |
Saved | (_Solution から継承されます。) | |
Saved | ソリューションが最後に保存したか開いたときから変更されていないかどうかを示す値を取得または設定します。 | |
SolutionBuild | (_Solution から継承されます。) | |
SolutionBuild | ソリューション レベルでのビルド オートメーション モデルのルート オブジェクトを表す、ソリューションの SolutionBuild オブジェクトを取得します。 | |
TemplatePath[String] | (_Solution から継承されます。) | |
TemplatePath[String] | GetProjectTemplate に置き換えられています。 |
このページのトップへ
メソッド
このページのトップへ
解説
このインターフェイスには、IDE の現在のインスタンスに存在するすべてのプロジェクトと、ビルド構成などのソリューション全体のすべてのプロパティから構成されるコレクションが含まれます。 これには、ラップ プロジェクト、サブプロジェクト、トップ レベルのプロジェクトのいずれであるかに関係なく、すべてのプロジェクトのプロジェクト要素が含まれます。
DTE.Solution プロパティを使用して、オープンなソリューションを確認できます。 MiscFiles や SolutionItems などの仮想プロジェクトを参照するには、Solution.Item(EnvDTE.Constants.vsProjectKindMisc または Solution.Item(EnvDTE.Constants.vsProjectKindSolutionItems を使用します。
例
このアドイン コードの実行方法については、「方法 : オートメーション オブジェクト モデルのコード例をコンパイルおよび実行する」を参照してください。
次のコードは、指定したパスに新しいコンソール アプリケーション ソリューションを作成します。
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)
SolutionExample(_applicationObject)
End Sub
Sub SolutionExample(ByVal dte As DTE2)
' This function creates a solution and adds a Visual Basic Console
' project to it.
Try
Dim soln As Solution2 = CType(DTE.Solution, Solution2)
Dim vbTemplatePath As String
' This path must exist on your computer.
' Replace <file path> below with an actual path.
Dim vbPrjPath As String = <file path>
MsgBox("starting")
' Get the project template path for a Visual Basic console application project.
vbTemplatePath = soln.GetProjectTemplate _
("ConsoleApplication.zip", "VisualBasic")
' Create a new Visual Baic Console project using the template obtained
' above.
soln.AddFromTemplate(vbTemplatePath, vbPrjPath, _
"New Visual Basic Console Project", False)
MsgBox("done")
Catch ex As System.Exception
MsgBox(ex.ToString)
End Try
End Sub
//you will need to add this reference to your project as well
using System.Windows.Forms;
public void OnConnection(object application,
Extensibility.ext_ConnectMode connectMode, object addInInst,
ref System.Array custom)
{
_applicationObject = (DTE2)application;
_addInInstance = (AddIn)addInInst;
// Pass the applicationObject member variable to the code example.
SolutionExample((DTE2)_applicationObject);
}
public void SolutionExample(DTE2 dte)
{
// This function creates a solution and adds a Visual C# Console
// project to it.
try{
Solution2 soln = (Solution2)_applicationObject.Solution;
String csTemplatePath;
// The file path must exist on your computer.
// Replace <file path> below with an actual path.
String csPrjPath = <file path>;
MessageBox.Show("Starting...");
csTemplatePath =
soln.GetProjectTemplate("ConsoleApplication.zip", "CSharp");
// Create a new C# Console project using the template obtained
// above.
soln.AddFromTemplate(csTemplatePath, csPrjPath,
"New CSharp Console Project", false);
MessageBox.Show("Done!");
}
catch(SystemException ex)
{
MessageBox.Show("ERROR: " + ex);
}
}