IVsTrackProjectDocuments2.OnQueryRemoveDirectories 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.
This method is called by a project to determine whether directories can be removed from the project.
public:
int OnQueryRemoveDirectories(Microsoft::VisualStudio::Shell::Interop::IVsProject ^ pProject, int cDirectories, cli::array <System::String ^> ^ rgpszMkDocuments, cli::array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYFLAGS> ^ rgFlags, cli::array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYRESULTS> ^ pSummaryResult, cli::array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYRESULTS> ^ rgResults);
public:
int OnQueryRemoveDirectories(Microsoft::VisualStudio::Shell::Interop::IVsProject ^ pProject, int cDirectories, Platform::Array <Platform::String ^> ^ rgpszMkDocuments, Platform::Array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYFLAGS> ^ rgFlags, Platform::Array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYRESULTS> ^ pSummaryResult, Platform::Array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYRESULTS> ^ rgResults);
int OnQueryRemoveDirectories(Microsoft::VisualStudio::Shell::Interop::IVsProject const & pProject, int cDirectories, std::Array <std::wstring const &> const & rgpszMkDocuments, std::Array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYFLAGS> const & rgFlags, std::Array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYRESULTS> const & pSummaryResult, std::Array <Microsoft::VisualStudio::Shell::Interop::VSQUERYREMOVEDIRECTORYRESULTS> const & rgResults);
public int OnQueryRemoveDirectories (Microsoft.VisualStudio.Shell.Interop.IVsProject pProject, int cDirectories, string[] rgpszMkDocuments, Microsoft.VisualStudio.Shell.Interop.VSQUERYREMOVEDIRECTORYFLAGS[] rgFlags, Microsoft.VisualStudio.Shell.Interop.VSQUERYREMOVEDIRECTORYRESULTS[] pSummaryResult, Microsoft.VisualStudio.Shell.Interop.VSQUERYREMOVEDIRECTORYRESULTS[] rgResults);
abstract member OnQueryRemoveDirectories : Microsoft.VisualStudio.Shell.Interop.IVsProject * int * string[] * Microsoft.VisualStudio.Shell.Interop.VSQUERYREMOVEDIRECTORYFLAGS[] * Microsoft.VisualStudio.Shell.Interop.VSQUERYREMOVEDIRECTORYRESULTS[] * Microsoft.VisualStudio.Shell.Interop.VSQUERYREMOVEDIRECTORYRESULTS[] -> int
Public Function OnQueryRemoveDirectories (pProject As IVsProject, cDirectories As Integer, rgpszMkDocuments As String(), rgFlags As VSQUERYREMOVEDIRECTORYFLAGS(), pSummaryResult As VSQUERYREMOVEDIRECTORYRESULTS(), rgResults As VSQUERYREMOVEDIRECTORYRESULTS()) As Integer
Parameters
- pProject
- IVsProject
[in] Project containing the directories to remove.
- cDirectories
- Int32
[in] Number of directories to remove.
- rgpszMkDocuments
- String[]
[in] Array of paths for the directories to remove.
- rgFlags
- VSQUERYREMOVEDIRECTORYFLAGS[]
[in] Array of directory removal flags. For a list of rgFlags
values, see VSQUERYREMOVEDIRECTORYFLAGS
- pSummaryResult
- VSQUERYREMOVEDIRECTORYRESULTS[]
[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 VSQUERYREMOVEDIRECTORYRESULTS_RemoveNotOK; if the results for all files are yes, then pSummaryResult
is equal to VSQUERYREMOVEDIRECTORYRESULTS_RemoveOK. For a list of pSummaryResult
values, see VSQUERYREMOVEDIRECTORYRESULTS.
- rgResults
- VSQUERYREMOVEDIRECTORYRESULTS[]
[out] Array of results[]. For a list of rgResults
values, see VSQUERYREMOVEDIRECTORYRESULTS.
Note If you pass in null
for this parameter, then only the summary result will be returned (pSummaryResult
).
Returns
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Remarks
COM Signature
From IVsTrackProjectDocuments2.idl
HRESULT IVsTrackProjectDocuments2::OnQueryRemoveDirectories(
[in] IVsProject *pProject,
[in] int cDirectories,
[in, size_is(cDirectories)] const LPCOLESTR rgpszMkDocuments[],
[in, size_is(cDirectories)] const VSQUERYREMOVEDIRECTORYFLAGS rgFlags[],
[out] VSQUERYREMOVEDIRECTORYRESULTS *pSummaryResult,
[out, size_is(cDirectories)] VSQUERYREMOVEDIRECTORYRESULTS rgResults[]
);
Call this method when you want to remove directories from the project. This method must be called before the directories are removed. The environment will return a flag indicating which directories can be removed. After you have received authorization to remove the directories and you have removed them, call OnAfterRemoveDirectories to confirm that the directories have been removed.
Note
All directory calls are optional. However, if you call one of the OnQuery*
directory methods, then you are required to call the corresponding OnAfter*
directory method if the OnQuery*
call was successful.