Microsoft DirectX 8.1 (C++) |
Note The IEnumRegFilters interface is deprecated.
Fills the array with descriptions of the next set of filters (specified by the cFilters parameter) that meet the requirements specified upon creation of the enumerator.
Syntax
HRESULT Next(
ULONG cFilters,
REGFILTER **apRegFilter,
ULONG *pcFetched
);
Parameters
cFilters
[in] Number of filters.
apRegFilter
[out] Address of a pointer to an array of REGFILTER pointers.
pcFetched
[out] Pointer to the actual number of filters passed.
Return Value
Returns one of the following HRESULT values.
Return code | Description |
E_INVALIDARG | Invalid argument. |
E_OUTOFMEMORY | Insufficient memory. |
E_POINTER | Null pointer argument. |
E_UNEXPECTED | Unexpected error. |
S_FALSE | Fewer filters were retrieved than requested. |
S_OK | Success. |
VFW_E_ENUM_OUT_OF_SYNC | The enumerator has become invalid. For more information, see Remarks. |
Remarks
The calling application must use the Microsoft Win32 CoTaskMemFree function to free each REGFILTER pointer returned in the array. Do not free the Name member of the REGFILTER structure separately, because IEnumRegFilters::Next allocates memory for this string as part of the REGFILTER structure.
If the number of registered filters changes, the state of the enumerator will no longer be consistent with the state of the registry. As a result, this method will return VFW_E_ENUM_OUT_OF_SYNC. You should discard any data obtained from previous calls to the enumerator, because it might be invalid, and update the enumerator by calling the Reset method. You can then call the Next method safely.
See Also