IAddrBook::CompareEntryIDs
適用対象: Outlook 2013 | Outlook 2016
特定のアドレス帳プロバイダーに属する 2 つのエントリ識別子を比較して、同じアドレス帳オブジェクトを参照するかどうかを判断します。
HRESULT CompareEntryIDs(
ULONG cbEntryID1,
LPENTRYID lpEntryID1,
ULONG cbEntryID2,
LPENTRYID lpEntryID2,
ULONG ulFlags,
ULONG FAR * lpulResult
);
パラメーター
cbEntryID1
[in] lpEntryID1 パラメーターによって指されるエントリ識別子のバイト数。
lpEntryID1
[in]比較する最初のエントリ識別子へのポインター。
cbEntryID2
[in] lpEntryID2 パラメーターによって指されるエントリ識別子のバイト数。
lpEntryID2
[in]比較する 2 番目のエントリ識別子へのポインター。
ulFlags
[����]�\��Ă��܂��B0 �ɂ���K�v������܂��B
lpulResult
[out]比較の結果へのポインター。 2 つのエントリ識別子が同じオブジェクトを参照している場合、 lpulResult の内容は TRUE に設定されます。それ以外の場合、内容は FALSE に設定されます。
戻り値
S_OK
�ʘb���������A�\�������l�܂��͒l���Ԃ���܂��B
MAPI_E_UNKNOWN_ENTRYID
lpEntryID1 パラメーターまたは lpEntryID2 パラメーターで渡されたエントリ識別子の一方または両方は、アドレス帳プロバイダーによって認識されません。
注釈
クライアント アプリケーションとサービス プロバイダーは 、CompareEntryIDs メソッドを呼び出して、1 つのアドレス帳プロバイダーに属する 2 つのエントリ識別子を比較して、同じオブジェクトを参照するかどうかを判断します。 CompareEntryID は 、オブジェクトに複数の有効なエントリ識別子を含めることができるので便利です。 この状況は、たとえば、アドレス帳プロバイダーの新しいバージョンがインストールされた後に発生する可能性があります。
MAPI は、エントリ識別子を担当するアドレス帳プロバイダーにこの呼び出しを渡し、エントリ識別子の MAPIUID 構造体をプロバイダーによって登録された MAPIUID 構造体と照合することで、適切なプロバイダーを決定します。
2 つのエントリ識別子が同じオブジェクトを参照している場合、 CompareEntryIDs は lpulResult パラメーターの内容を TRUE に設定します。異なるオブジェクトを参照する場合、 CompareEntryIDs は内容を FALSE に設定します。 どちらの場合も、 CompareEntryIDs は S_OKを返します。 CompareEntryIDs がエラーを返す場合は、アドレス帳プロバイダーがエントリ識別子に一致する MAPIUID 構造体を登録していない場合に発生する可能性があります。クライアントとプロバイダーは、比較の結果に基づいてアクションを実行しないでください。 代わりに、実行されるアクションに対して最も保守的なアプローチを取る必要があります。