_Solution Interface
Represents all projects and solution-wide properties in the integrated development environment (IDE). Refer to Solution for this functionality. Do not instantiate from this class.
Assembly: EnvDTE (in EnvDTE.dll)
| Name | Description | |
|---|---|---|
![]() | AddIns | Gets an AddIns collection, which contains all currently available add-ins associated with the solution. |
![]() | Count | Gets a value indicating the number of objects in the collection. |
![]() | DTE | Gets the top-level extensibility object. |
![]() | Extender[String^] | Gets the requested Extender object if it is available for this object. |
![]() | ExtenderCATID | Gets the Extender category ID (CATID) for the object. |
![]() | ExtenderNames | Gets a list of available Extenders for the object. |
![]() | FileName | This API supports the product infrastructure and is not intended to be used directly from your code. Microsoft Internal Use Only. |
![]() | FullName | Gets the full path and name of the object's file. |
![]() | Globals | Gets the Globals that contains add-in values that may be saved in the solution (.sln) file, the project file, or in the user's profile data. |
![]() | IsDirty | This API supports the product infrastructure and is not intended to be used directly from your code. Microsoft Internal Use Only. |
![]() | IsOpen | Determines if a solution is open. |
![]() | Parent | Gets the immediate parent object of a _Solution. |
![]() | Projects | Gets a collection of the projects currently in the solution. |
![]() | Properties | Gets a collection of all properties that pertain to the _Solution. |
![]() | Saved | Returns true if the object has not been modified since last being saved or opened. |
![]() | SolutionBuild | Gets the SolutionBuild object for the solution, which represents the root of the build automation model at the solution level. |
![]() | TemplatePath[String^] | Gets the full path and name of the directory that contains templates for the specified type of project. |
| Name | Description | |
|---|---|---|
![]() | AddFromFile(String^, Boolean) | Adds a project to the solution, based on a project file already stored in the system. |
![]() | AddFromTemplate(String^, String^, String^, Boolean) | Copies an existing project file, and any items or subdirectories it contains, to the specified location and adds it to the solution. |
![]() | Close(Boolean) | Closes the current solution. |
![]() | Create(String^, String^) | Creates an empty solution in the specified directory with the specified name. |
![]() | FindProjectItem(String^) | Locates an item in a project. |
![]() | GetEnumerator() | Returns an enumeration for items in a collection. |
![]() | Item(Object^) | |
![]() | Open(String^) | Opens the solution in the specified view. |
![]() | ProjectItemsTemplatePath(String^) | Returns the location of project item templates for the specified project type. |
![]() | Remove(Project^) | Removes the specified project from the solution. |
![]() | SaveAs(String^) | Saves the solution. |
The Solution object is a collection of all the 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 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).
Sub SolutionExample() 'This function creates a solution and adds a Visual Basic Console 'project to it. Dim soln As Solution Dim proj As Project Dim msg As String 'Create a reference to the solution. soln = DTE.Solution ' Create a new solution. soln.Create("c:\temp2", "MyNewSolution") ' Create a new VB project from a template. ' Adjust the template path and save path as needed. proj = soln.AddFromTemplate("<template path>\ConsoleApplication.vbproj", "c:\temp2", "My New Project", True) ' Save the new solution and project. soln.SaveAs("c:\temp2\newsolution.sln") msg = "Created new solution: " & soln.FullName & vbCrLf msg = msg & "Created new project: " & proj.Name MsgBox(msg) End Sub

