IMAPITable::CreateBookmark

適用対象: Outlook 2013 | Outlook 2016

テーブルの現在の位置にブックマークを作成します。

HRESULT CreateBookmark(
BOOKMARK FAR * lpbkPosition
);

パラメーター

lpbkPosition

[out]返された 32 ビットブックマーク値へのポインター。 このブックマークは、後で IMAPITable::SeekRow メソッドの呼び出しで渡すことができます。

戻り値

S_OK

�ʘb���������A�\�������l�܂��͒l���Ԃ���܂��B

MAPI_E_UNABLE_TO_COMPLETE

要求された操作を完了できませんでした。

注釈

IMAPITable::CreateBookmark メソッドは、ブックマークと呼ばれる値を作成することで、テーブルの位置をマークします。 ブックマークを使用して、ブックマークによって識別される位置に戻ることができます。 ブックマークされた位置は、テーブル内のその行にあるオブジェクトに関連付けられます。

ブックマークは添付ファイル テーブルではサポートされておらず、 CreateBookmark の添付ファイル テーブルの実装はMAPI_E_NO_SUPPORTを返します。

実装に関するメモ

ブックマークを使用してカーソル位置を維持するメモリコストが発生するため、作成できるブックマークの数を制限します。 その番号に達したら、 CreateBookmark への後続のすべての呼び出しからMAPI_E_UNABLE_TO_COMPLETEを返します。

ブックマークが、テーブル ビューに表示されなくなった行を指している場合があります。 呼び出し元がこのようなブックマークを使用する場合は、次に表示される行にカーソルを移動し、そこで停止します。

折りたたまれたために、呼び出し元が非表示の行を指すブックマークを使用しようとすると、ブックマークの移動後にMAPI_W_POSITION_CHANGEDを返します。 この時点で、または SetCollapseState メソッドで折りたたみが発生したときに、ブックマークを次に表示される行に再配置できます。 行が折りたたまれた時点でブックマークを移動する場合は、ブックマークが移動された日時を示すビットをブックマークに保持する必要があります。これは、最後に使用されてから、または作成後に使用されたことがない場合です。

呼び出し側への注意

CreateBookmark は 、作成するブックマークのメモリを割り当てます。 IMAPITable::FreeBookmark メソッドを呼び出して、ブックマークのリソースを解放します。

関連項目

IMAPITable::FreeBookmark

IMAPITable::SeekRow

IMAPITable : IUnknown