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 メソッドを呼び出して、ブックマークのリソースを解放します。