IAddrBook::PrepareRecips

適用対象: Outlook 2013 | Outlook 2016

メッセージング システムで後で使用できるように受信者リストを準備します。

HRESULT PrepareRecips(
  ULONG ulFlags,
  LPSPropTagArray lpSPropTagArray,
  LPADRLIST lpRecipList
);

パラメーター

ulFlags

[in]エントリの開き方を制御するフラグのビットマスク。 次のフラグを設定できます。

MAPI_CACHE_ONLY

名前解決を実行するには、オフライン アドレス帳のみを使用します。 たとえば、このフラグを使用すると、クライアント アプリケーションがキャッシュされた交換モードでグローバル アドレス一覧 (GAL) を開き、クライアントとサーバー間のトラフィックを作成せずにキャッシュからそのアドレス帳のエントリにアクセスできます。 このフラグは、Exchange アドレス帳プロバイダーによってのみサポートされます。

lpSPropTagArray

[in]更新が必要なプロパティ (存在する場合) を示すプロパティ タグの配列を含む SPropTagArray 構造体へのポインター。 lpSPropTagArray パラメーターは NULL にすることができます。

lpRecipList

[in]受信者のリストを含む ADRLIST 構造体へのポインター。

戻り値

S_OK

受信者リストが正常に準備されました。

注釈

クライアントとサービス プロバイダーは PrepareRecips メソッドを呼び出して、次の操作を行います。

  • lpRecipList パラメーター内のすべての受信者に、長期的なエントリ識別子があることを確認します。

  • lpRecipList パラメーターの各受信者が lpSPropTagArray パラメーターに一覧表示されているプロパティを持ち、これらのプロパティが受信者リストの先頭に表示されていることを確認します。

MAPI は、各受信者の短期エントリ識別子を長期的なエントリ識別子に変換します。 必要に応じて、受信者の長期的なエントリ識別子が適切なアドレス帳プロバイダーから取得され、追加のプロパティが要求されます。

個々の受信者エントリでは、要求されたプロパティが最初に並べ替えられます。その後、エントリに既に存在していたプロパティが続きます。 lpSPropTagArray パラメーターの要求されたプロパティの 1 つ以上が適切なアドレス帳プロバイダーによって処理されない場合、そのプロパティの種類は PT_ERROR に設定されます。 プロパティの値は、MAPI_E_NOT_FOUNDまたはプロパティが使用できないより具体的な理由を示す別の値に設定されます。 lpRecipList パラメーターに含まれる各 SPropValue 構造体は、MAPIAllocateBuffer 関数と MAPIAllocateMore 関数を使用して個別に割り当てる必要があります。

PT_ERRORの詳細については、「 プロパティの種類」を参照してください。

関連項目

ADRLIST

IMAPIProp::GetProps

IMessage::ModifyRecipients

PidTagEntryId 標準プロパティ

SPropValue

SRowSet

IAddrBook : IMAPIProp