Після Змінення успадкування RMyProviderRowset, ви повинні здійснити у IRowsetLocate інтерфейсу. Ви можете знайти визначення інтерфейсу в на Резюме інтерфейс OLE DB програміста посилання і в регіоні OLEDB.H-файлу в OLE DB SDK включають каталозі.
Для реалізації цього інтерфейсу:
IRowsetLocateImpl , походить від IRowsetі реалізувати клас.////////////////////////////////////////////////////////////////////////
/ / RowLoc.h
/ / клас IRowsetLocateImpl
Шаблон lt; клас t >
клас ATL_NO_VTABLE IRowsetLocateImpl: Громадська IRowsetImpl <T> {
готелю:
STDMETHOD (Порівняйте) (HCHAPTER hReserved, ULONG cbBookmark1, константа БАЙТ * pBookmark1, ULONG cbBookmark2, константа БАЙТ * pBookmark2, DBCOMPARE * pComparison)
{
повернення S_OK;
}
STDMETHOD (GetRowsAt) (HWATCHREGION hReserved1, HCHAPTER hReserved2,
ULONG cbBookmark, константа БАЙТ * pBookmark, ДОВГИХ lRowsOffset,
ДОВГИЙ Ворон, ULONG * pcRowsObtained, HROW ** prghRows)
{
повернення S_OK;
}
STDMETHOD (GetRowsByBookmark) (HCHAPTER hReserved, ULONG Ворон,
константа ULONG rgcbBookmarks [], константа БАЙТ * [rgpBookmarks],
[HROW rghRows], DBROWSTATUS rgRowStatus[])
{
повернення S_OK;
}
STDMETHOD (хеша) (HCHAPTER hReserved, ULONG cBookmarks,
константа ULONG rgcbBookmarks [], константа БАЙТ * [rgpBookmarks],
RgHashedValues DWORD [], DBROWSTATUS rgBookmarkStatus[])
{
ATLTRACENOTIMPL("IRowsetLocateImpl::GetRowsByBookmark");
}
}
У наступного тему, ви побачите те, як завершити виконання шляхом додавання закладки.