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 関数を呼び出すことで、このエントリ識別子を解放する必要があります。
特定のテンプレートを使用して、変更可能なコンテナーに新しいエントリを追加するには、次の手順を使用します。
IMAPISession::OpenEntry メソッドを呼び出して宛先コンテナーを開き、lpEntryID パラメーターをコンテナーのエントリ識別子に設定します。
宛先コンテナーの IMAPIProp::OpenProperty メソッドを呼び出し、 ulPropTag パラメーターを PR_CREATE_TEMPLATES (PidTagCreateTemplates) に、 lpiid パラメーターを IID_IMAPITableに設定します。 コンテナーは、新しいエントリの作成にサポートされているすべてのテンプレートを一覧表示する 1 回限りのテーブルを返します。
作成する特定の種類のエントリのテンプレートを表す行を取得します。 PR_ADDRTYPE (PidTagAddressType) 列は、テンプレートでサポートされているアドレスの種類を示します。
NewEntry メソッドを呼び出し、lpEIDNewEntryTpl を選択したテンプレートのエントリ識別子に設定します。 エントリ識別子は、1 回限りのテーブル内のテンプレートの行から PR_ENTRYID (PidTagEntryId) 列になります。 cbEIDContainer で 0 を渡し、lpEIDContainer で NULL を渡します。 新しいエントリのエントリ識別子を保持する場合は、 lppEIDNewEntry パラメーターに有効なポインターを渡します。