IVsProject4.GetFilesWithItemType(String, UInt32, UInt32[], 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.
Returns an array of VSITEMIDs of files whose MSBuild ItemType matches the given string. The comparison is case insensitive.
public:
int GetFilesWithItemType(System::String ^ pszItemType, System::UInt32 celt, cli::array <System::UInt32> ^ rgItemids, [Runtime::InteropServices::Out] System::UInt32 % pcActual);
int GetFilesWithItemType(std::wstring const & pszItemType, unsigned int celt, std::Array <unsigned int> const & rgItemids, [Runtime::InteropServices::Out] unsigned int & pcActual);
public int GetFilesWithItemType (string pszItemType, uint celt, uint[] rgItemids, out uint pcActual);
abstract member GetFilesWithItemType : string * uint32 * uint32[] * uint32 -> int
Public Function GetFilesWithItemType (pszItemType As String, celt As UInteger, rgItemids As UInteger(), ByRef pcActual As UInteger) As Integer
Parameters
- pszItemType
- String
The ItemType.
- celt
- UInt32
The number of files to return.
- rgItemids
- UInt32[]
The array of ITEMIDs.
- pcActual
- UInt32
The actual number of files returned.
Returns
If the method succeeds, it returns S_OK. If it fails, it returns an error code.
Examples
An extremely common pattern is to call the method twice, the first time passing in 0 for the number of items and NULL for the array, and the second time passing in a properly-sized array and the actual number of items, and like the following (omitting error checks for readability):
hr = pIVsProject4->GetFilesWithItemType(szItemType, 0, NULL, &cExpected);
VSITEMID *rgItemids = ::CoTaskMemAlloc(cExpected * sizeof(VSITEMID));
hr = pIVsProject4->GetFilesWithItemType(szItemType, cExpected, rgItemids, &cActual);
Remarks
If celt
is zero and rgItemids
is NULL, the number of matching files is returned in pcActual
. If celt
is not zero, rgItemids
must not be NULL, or E_POINTER is returned.