IRowsetCurrentIndex::GetIndex

Gets the current index on the rowset.

Syntax

HRESULT GetIndex (
   DBID            **ppIndexID);

Parameters

  • ppIndexID
    [out] The DBID of the active index on the base table.

Return Code

  • S_OK
    The method succeeded. If there is no current index, ppIndexID is set to NULL.

  • E_INVALIDARG
    ppIndexID was a null pointer.

  • E_OUTOFMEMORY
    The provider was unable to allocate sufficient memory in which to return ppIndexID.

  • E_FAIL
    A provider-specific error occurred.

Comments

IRowsetCurrentIndex::GetIndex returns the index ID of the current index for the rowset. If a rowset is opened via the ppIndexID argument to IOpenRowset::OpenRowset, the value can be retrieved via this interface, assuming it has not been changed since the rowset was opened. The current index is always returned via this method.

The provider allocates memory for ppIndexID. The consumer must free this memory by calling IMalloc::Free.