次の方法で共有


IMAPIContainer::GetContentsTable

適用対象: Outlook 2013 | Outlook 2016

コンテナーのコンテンツ テーブルへのポインターを返します。

HRESULT GetContentsTable(
  ULONG ulFlags,
  LPMAPITABLE FAR * lppTable
);

パラメーター

ulFlags

[in]コンテンツ テーブルの返し方を制御するフラグのビットマスク。 次のフラグを設定できます。

MAPI_ASSOCIATED

コンテナーに関連付けられているコンテンツ テーブルは、標準のコンテンツ テーブルではなく返す必要があります。 このフラグはフォルダーでのみ使用されます。 関連するコンテンツ テーブルに含まれるメッセージは、 IMAPIFolder::CreateMessage メソッドの呼び出しでMAPI_ASSOCIATED フラグを設定して作成されました。 通常、クライアントは関連付けられたコンテンツ テーブルを使用して、フォーム、ビュー、およびその他の非表示メッセージを取得します。

ACLTABLE_FREEBUSY

PR_MEMBER_RIGHTSの frightsFreeBusySimple および frightsFreeBusyDetailed 権限へのアクセス 有効にします。

MAPI_DEFERRED_ERRORS

GetContentsTable は、呼び出し元がテーブルを使用できるようになる前に、正常に戻ることができます。 テーブルが使用できない場合、後続のテーブル呼び出しを行うとエラーが発生する可能性があります。

MAPI_UNICODE

文字列データを含む列を Unicode 形式で返すように要求します。 MAPI_UNICODE フラグが設定されていない場合は、文字列を ANSI 形式で返す必要があります。

SHOW_SOFT_DELETES

現在論理的に削除済みとしてマークされているアイテムを表示します。つまり、削除されたアイテムの保持期間フェーズにあります。

lppTable

[out]コンテンツ テーブルへのポインター。

戻り値

S_OK

コンテンツ テーブルが正常に取得されました。

MAPI_E_BAD_CHARWIDTH

MAPI_UNICODE フラグが設定され、実装で Unicode がサポートされていないか、MAPI_UNICODEが設定されておらず、実装で Unicode のみがサポートされています。

MAPI_E_NO_SUPPORT

コンテナーにはコンテンツがなく、コンテンツ テーブルを提供できません。

注釈

IMAPIContainer::GetContentsTable メソッドは、コンテナーのコンテンツ テーブルへのポインターを返します。 コンテンツ テーブルには、コンテナー内のオブジェクトに関する概要情報が含まれています。

コンテンツ テーブルには長い列セットがあります。 コンテンツ テーブルの必須列と省略可能な列の完全な一覧については、「 コンテンツ テーブル」を参照してください。

一部のコンテナーにコンテンツがない場合があります。 これらのコンテナーは 、GetContentsTable の実装からMAPI_E_NO_SUPPORTを返します。

実装に関するメモ

コンテナーのコンテンツ テーブルをサポートする場合は、次の操作も行う必要があります。

このメソッドのリモート トランスポート プロバイダーの実装は、GetContentsTable メソッドに渡される ppTable パラメーター内の IMAPITable : IUnknown インターフェイスへのポインターを返す必要があります。 トランスポート プロバイダーに既存のコンテンツ テーブルがある場合は、そのテーブルへのポインターを返す必要があります。 そうでない場合、このメソッドは新しい IMAPITable : IUnknown オブジェクトを作成し、メッセージ ヘッダー (使用可能な場合) をテーブルに設定し、新しいテーブルへのポインターを返す必要があります。 ITableData::HrGetView メソッドは、戻り値を生成し、ppTable パラメーターにテーブル ポインターを格納する場合に便利です。 コンテンツ テーブルは、少なくとも次のプロパティ列をサポートする必要があります。

呼び出し側への注意

文字列とバイナリコンテンツのテーブル列を切り捨てることができます。 通常、プロバイダーは 255 文字を返します。 テーブルに切り捨てられた列が含まれているかどうかを事前に把握できないため、列の長さが 255 バイトまたは 510 バイトの場合は、列が切り捨てられると仮定します。 必要に応じて、切り捨てられた列の完全な値をオブジェクトから直接取得するには、エントリ識別子を使用して開き、 IMAPIProp::GetProps メソッドを呼び出します。

プロバイダーの実装に応じて、制限と並べ替え操作は、すべての文字列またはその文字列の切り捨てられたバージョンに適用できます。

MFCMAPI リファレンス

MFCMAPI のサンプル コードについては、次の表を参照してください。

ファイル 関数 コメント
ContentsTableDialog.cpp
CContentsTableDlg::CContentsTableDlg
CContentsTableDlg クラスは、GetContentsTable を使用してコンテンツ テーブルのエントリを取得します。

関連項目

IMAPIProp::GetPropList

IMAPIProp::GetProps

IMAPIProp::OpenProperty

IMAPITable : IUnknown

PidTagContainerContents 標準プロパティ

IMAPIContainer : IMAPIProp

[�R��h �T���v���Ƃ��� MFCMAPI