IVsSolution2.AddVirtualProject(IVsHierarchy, UInt32) Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Adds a type of virtual project that is not created by clicking OpenProject on the New menu to open the solution.
public:
int AddVirtualProject(Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ pHierarchy, System::UInt32 grfAddVPFlags);
public:
int AddVirtualProject(Microsoft::VisualStudio::Shell::Interop::IVsHierarchy ^ pHierarchy, unsigned int grfAddVPFlags);
int AddVirtualProject(Microsoft::VisualStudio::Shell::Interop::IVsHierarchy const & pHierarchy, unsigned int grfAddVPFlags);
public int AddVirtualProject (Microsoft.VisualStudio.Shell.Interop.IVsHierarchy pHierarchy, uint grfAddVPFlags);
abstract member AddVirtualProject : Microsoft.VisualStudio.Shell.Interop.IVsHierarchy * uint32 -> int
Public Function AddVirtualProject (pHierarchy As IVsHierarchy, grfAddVPFlags As UInteger) As Integer
Parameters
- pHierarchy
- IVsHierarchy
[in] Pointer to the IVsHierarchy interface for the virtual project object. This object must support at least the following interfaces: IVsHierarchyIVsUIHierarchyIVsProject
- grfAddVPFlags
- UInt32
[in] Determines whether to add a new virtual project to the Solution Explorer. For a list of grfAddVPFlags
, see __VSADDVPFLAGS.
Returns
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Implements
Remarks
COM Signature
From vsshell.idl:
HRESULT IVsSolution2::AddVirtualProject(
[in] IVsHierarchy *pHierarchy,
[in] VSADDVPFLAGS grfAddVPFlags
);
Virtual projects are created by another facility that manages the project, and then they are added to the solution. This method makes it possible for these project hierarchies to participate in the GetProjectEnum project enumeration. You must include EPF_VIRTUAL flag in the call to GetProjectEnum if virtual projects are to be included in the enumeration. If EPF_ALL is specified, virtual projects are not included.
A virtual project is an IVsHierarchy interface item that behaves as a project in that it is a container of items (documents), but it is not a real project because it is not created by clicking Project on the New menu. Examples of virtual projects are the DataView
hierarchies. These hierarchies are containers for stored procedures, tables, views, schema diagrams, and so on. By adding a DataView
hierarchy as a virtual project, the OpenDocumentViaProject method can open items from DataView
hierarchies. This functionality is important, as it makes possible the debugging of stored procedures.
Use the RemoveVirtualProject method to close a virtual project.