IVsTrackProjectDocumentsEvents2::OnQueryAddDirectories Method (IVsProject^, Int32, array<String^>^, array<VSQUERYADDDIRECTORYFLAGS>^, array<VSQUERYADDDIRECTORYRESULTS>^, array<VSQUERYADDDIRECTORYRESULTS>^)
This method notifies the client when a project has requested to add directories.
Assembly: Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)
int OnQueryAddDirectories( IVsProject^ pProject, int cDirectories, array<String^>^ rgpszMkDocuments, array<VSQUERYADDDIRECTORYFLAGS>^ rgFlags, array<VSQUERYADDDIRECTORYRESULTS>^ pSummaryResult, array<VSQUERYADDDIRECTORYRESULTS>^ rgResults )
Parameters
- pProject
-
Type:
Microsoft.VisualStudio.Shell.Interop::IVsProject^
[in] Project to which the directories will be added.
- cDirectories
-
Type:
System::Int32
[in] Number of directories to add.
- rgpszMkDocuments
-
Type:
array<System::String^>^
[in] Array of paths for the directories to add.
- rgFlags
-
Type:
array<Microsoft.VisualStudio.Shell.Interop::VSQUERYADDDIRECTORYFLAGS>^
[in] Flags identifying information about each directory. For a list of rgFlags values, see VSQUERYADDDIRECTORYFLAGS.
- pSummaryResult
-
Type:
array<Microsoft.VisualStudio.Shell.Interop::VSQUERYADDDIRECTORYRESULTS>^
[out] Summary result object. This object is a summation of the yes and no results for the array of directories passed in rgpszMkDocuments. If the result for a single directory is no, then pSummaryResult is equal to VSQUERYADDDIRECTORYRESULTS_AddNotOK; if the results for all directories are yes, then pSummaryResult is equal to VSQUERYADDDIRECTORYRESULTS_AddOK. For a list of pSummaryResult values, see VSQUERYADDDIRECTORYRESULTS.
- rgResults
-
Type:
array<Microsoft.VisualStudio.Shell.Interop::VSQUERYADDDIRECTORYRESULTS>^
[out] Array of results. For a list of rgResults values, see VSQUERYADDDIRECTORYRESULTS.
Return Value
Type: System::Int32If the method succeeds, it returns S_OK. If it fails, it returns an error code.
From IVsTrackProjectDocumentsEvents2.idl
HRESULT IVsTrackProjectDocumentsEvents2::OnQueryAddDirectories( [in] IVsProject *pProject, [in] int cDirectories, [in, size_is(cDirectories)] const LPCOLESTR rgpszMkDocuments[], [in, size_is(cDirectories)] const VSQUERYADDDIRECTORYFLAGS rgFlags[], [out] VSQUERYADDDIRECTORYRESULTS *pSummaryResult, [out, size_is(cDirectories)] VSQUERYADDDIRECTORYRESULTS rgResults[] );
Use IVsTrackProjectDocumentsEvents2.OnQueryAddDirectories to indicate whether specified directories can be added to the project. Deny a query only if allowing the operation would compromise your stable state. For example, source control denies add queries if a file being added conflicts with an existing file already under source control.