IAddrBook::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

[in]使用されるテキストの種類を制御するフラグのビットマスク。 次のフラグを設定できます。

MAPI_UNICODE

渡された文字列は Unicode 形式です。 MAPI_UNICODE フラグが設定されていない場合、文字列は ANSI 形式です。

cbEIDContainer

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

lpEIDContainer

[in]新しい受信者を追加するコンテナーのエントリ識別子へのポインター。 cbEIDContainer パラメーターが 0 の場合、NewEntry メソッドは、IAddrBook::CreateOneOff メソッドが呼び出されたかのように、受信者エントリ識別子とテンプレートの一覧を返します。

cbEIDNewEntryTpl

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

lpEIDNewEntryTpl

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

lpcbEIDNewEntry

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

lppEIDNewEntry

[out]新しい受信者のエントリ識別子へのポインターへのポインター。

戻り値

S_OK

新しいアドレス帳エントリが正常に作成されました。

注釈

NewEntry メソッドは、コンテナーに直接追加したり、送信メッセージのアドレス指定に使用したりするために、新しいアドレス帳エントリを作成します。

呼び出し側への注意

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

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

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

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

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

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

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

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

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

関連項目

IAddrBook::OpenEntry

IMAPIProp::OpenProperty

PidTagCreateTemplates 標準プロパティ

IAddrBook : IMAPIProp