IRowsetLocate の実装

RMyProviderRowset の継承の変更後、あなたを実装する必要があります、 IRowsetLocate インターフェイス。インターフェイス定義で見つけることができます、 インターフェイスの概要と OLEDB OLE DB プログラマの参照の。H ファイル、OLE DB SDK のインクルード ディレクトリ。

このインターフェイスを実装するには:

  1. RowLoc.h という名前の新しいファイルを作成し、ファイルをプロジェクトに追加。

  2. RowLoc.h では、クラスの定義を作成 IRowsetLocateImpl 、 IRowsetから、派生し、クラスを実装。

  3. インターフェイスのメソッドは、OLE DB ヘッダー ファイル OLEDB からコピーします。H RowLoc.h します。STDMETHOD に HRESULT リターン コードを変更し、次のコードに示すように、メソッド名の前後にかっこを配置。

  4. (次のトピックで説明) の実装を完了します。
//////////////////////////////////////////////////////////////////////////RowLoc.h・ IRowsetLocateImpl クラステンプレート lt; T クラス >ATL_NO_VTABLE IRowsetLocateImpl クラス: 公共 Irowset:irowsetimpl <T> {パブリック。STDMETHOD (比較) (HCHAPTER hReserved、cbBookmark1、ULONG const バイト ※ pBookmark1、ULONG cbBookmark2、const バイト ※ pBookmark2、DBCOMPARE ※ pComparison){S_OK を返す;}STDMETHOD (GetRowsAt) (HWATCHREGION hReserved1、hReserved2、HCHAPTERULONG cbBookmark、const バイト ※ pBookmark、長い lRowsOffset長いカラス、ULONG ※ pcRowsObtained、HROW 年 prghRows){S_OK を返す;}STDMETHOD (GetRowsByBookmark) (HCHAPTER hReserved、ULONG カラスconst ULONG rgcbBookmarks、const バイト ※ rgpBookmarks、HROW rghRows DBROWSTATUS rgRowStatus[]){S_OK を返す;}STDMETHOD (ハッシュ) (HCHAPTER hReserved、cBookmarks、ULONGconst ULONG rgcbBookmarks、const バイト ※ rgpBookmarks、DWORD rgHashedValues DBROWSTATUS rgBookmarkStatus[]){ATLTRACENOTIMPL("IRowsetLocateImpl::GetRowsByBookmark");}}

次のトピックでは、表示のブックマークを追加することによって、実装を完了する方法。

Index