IMAPISupport::NewEntry

適用対象: Outlook 2013 | Outlook 2016

アドレス帳コンテナーまたは送信メッセージの受信者リストに、新しい受信者を直接追加します。

HRESULT NewEntry(
  ULONG_PTR ulUIParam,
  ULONG ulFlags,
  ULONG cbEIDContainer,
  LPENTRYID lpEIDContainer,
  ULONG cbEIDNewEntryTpl,
  LPENTRYID lpEIDNewEntryTpl,
  ULONG FAR * lpcbEIDNewEntry,
  LPENTRYID FAR * lppEIDNewEntry
);

パラメーター

ulUIParam

[in]ダイアログ ボックスの親ウィンドウへのハンドル。

ulFlags

[����]�\�񂳂�Ă��܂��B0 �ɂ���K�v������܂��B

cbEIDContainer

[in] lpEIDContainer パラメーターによって指されるエントリ識別子のバイト数。

lpEIDContainer

[in]新しいエントリを受け取るコンテナーのエントリ識別子へのポインター。 cbEIDContainer が 0 で lpEIDContainer が NULL の場合、NewEntryIMAPISupport::CreateOneOff メソッドの呼び出しによって生成されるのと同じ型の 1 回限りのエントリ識別子を作成します。

cbEIDNewEntryTpl

[in] lpEIDNewEntryTpl パラメーターによって指されるエントリ識別子のバイト数。

lpEIDNewEntryTpl

[in]新しいエントリの作成に使用するテンプレートのエントリ識別子へのポインター。 cbEIDNewEntryTpl が 0 で lpEIDNewEntryTpl が NULL の場合、NewEntry は、ユーザーが新しいエントリを追加するためのテンプレートの一覧から選択できるようにするダイアログ ボックスを表示します。

lpcbEIDNewEntry

[out] lppEIDNewEntry パラメーターによって指されるエントリ識別子のバイト数へのポインター。

lppEIDNewEntry

[out]新しく作成されたエントリのエントリ識別子へのポインター。

戻り値

S_OK

新しいエントリが正常に作成されました。

注釈

IMAPISupport::NewEntry メソッドは、アドレス帳プロバイダーサポート オブジェクトに実装されます。 アドレス帳プロバイダーは NewEntry を呼び出して、コンテナーに直接追加する新しいアドレス帳エントリを作成するか、送信メッセージのアドレス指定に使用します。

呼び出し側への注意

新しいエントリを特定のコンテナーに追加する場合は、 lpEIDContainer をコンテナーのエントリ識別子に設定し、 cbEIDContainer をエントリ識別子のバイト数に設定します。

新しいエントリを送信メッセージの受信者リストに追加する場合は、 lpEIDContainer を NULL に、 cbEIDContainer を 0 に設定します。

クライアント アプリケーションのユーザーが作成するエントリの種類を選択できるようにする場合は、cbEIDNewEntryTpl で 0 を渡し、lpEIDNewEntryTpl で NULL を渡します。 NewEntry には、MAPI の 1 回限りのテーブル、MAPI とセッションでサポートされている各アドレス帳プロバイダーのテンプレートの一覧が表示されます。 各テンプレートは、1 つ以上のアドレスの種類の受信者エントリを作成できます。

新しいエントリのエントリ識別子を保持する場合は、 lpcbEIDNewEntry パラメーターと lppEIDNewEntry パラメーターに有効なポインターを渡します。 MAPIFreeBuffer 関数を呼び出すことで、このエントリ識別子を解放する必要があります。

特定のテンプレートを使用して、変更可能なコンテナーに新しいエントリを追加するには、次の手順を使用します。

  1. IMAPISupport::OpenEntry メソッドを呼び出して宛先コンテナーを開き、lpEntryID パラメーターをコンテナーのエントリ識別子に設定します。

  2. 宛先コンテナーの IMAPIProp::OpenProperty メソッドを呼び出し、 ulPropTag パラメーターを PR_CREATE_TEMPLATES (PidTagCreateTemplates) に、 lpiid パラメーターを IID_IMAPITableに設定します。 コンテナーは、新しいエントリの作成にサポートされているすべてのテンプレートを一覧表示する 1 回限りのテーブルを返します。

  3. 作成する特定の種類のエントリのテンプレートを表す行を取得します。 PR_ADDRTYPE (PidTagAddressType) 列は、テンプレートでサポートされているアドレスの種類を示します。

  4. IMAPISupport::NewEntry を呼び出し、lpEIDNewEntryTpl パラメーターを選択したテンプレートのエントリ識別子に設定します。 エントリ識別子は、1 回限りのテーブル内のテンプレートの行から PR_ENTRYID (PidTagEntryId) 列です。 cbEIDContainer で 0 を渡し、lpEIDContainer で NULL を渡します。 新しいエントリのエントリ識別子を保持する場合は、 lppEIDNewEntry パラメーターに有効なポインターを渡します。

関連項目

IMAPIProp::OpenProperty

IMAPISupport::OpenEntry

PidTagCreateTemplates 標準プロパティ

IMAPISupport: IUnknown