Solution2 Interface
Visual Studio 2005
Represents all projects and solution-wide properties in the integrated development environment (IDE).
Namespace: EnvDTE80
Assembly: EnvDTE80 (in envdte80.dll)
Assembly: EnvDTE80 (in envdte80.dll)
[GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA")] public interface Solution2 : _Solution
/** @attribute GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA") */
public interface Solution2 extends _Solution
GuidAttribute("FA238614-FBB1-4314-A7F7-49AE8BB6C6BA") public interface Solution2 extends _Solution
The Solution object is a collection of all projects in the current instance of the IDE and all solution-wide properties, such as build configurations. The Solution object contains a project element for every project, whether it is a wrapped project, a subproject, or a top-level project.
Reference this object by using DTE.Solution. To refer to virtual projects, such as MiscFiles or SolutionItems, use Solution.Item(EnvDTE.Constants.vsProjectKindMisc) or Solution.Item(EnvDTE.Constants.vsProjectKindSolutionItems).
For information on how to run this add-in code, see How to: Compile and Run the Automation Object Model Code Examples.
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>"; "<file path>MessageBox.Show("Starting..."); "<file path>"<file path>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); } }