Поделиться через


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

[в] Дескриптор родительского окна диалогового окна.

ulFlags

[in] ���������������; ������ ���� ����� ����.

cbEIDContainer

[в] Число байтов в идентификаторе записи, на который указывает параметр lpEIDContainer .

lpEIDContainer

[в] Указатель на идентификатор записи контейнера для получения новой записи. Если cbEIDContainer имеет значение 0, а lpEIDContainer имеет значение NULL, NewEntry создает идентификатор однократной записи того же типа, что и при вызове метода IMAPISupport::CreateOneOff .

cbEIDNewEntryTpl

[в] Число байтов в идентификаторе записи, на который указывает параметр lpEIDNewEntryTpl .

lpEIDNewEntryTpl

[в] Указатель на идентификатор записи шаблона, который будет использоваться для создания новой записи. Если cbEIDNewEntryTpl имеет значение 0, а lpEIDNewEntryTpl — NULL, NewEntry отображает диалоговое окно, позволяющее пользователю выбрать из списка шаблонов для добавления новых записей.

lpcbEIDNewEntry

[out] Указатель на число байтов в идентификаторе записи, на который указывает параметр lppEIDNewEntry .

lppEIDNewEntry

[out] Указатель на указатель на идентификатор записи вновь созданной записи.

Возвращаемое значение

S_OK

Новая запись успешно создана.

Замечания

Для объектов поддержки поставщика адресных книг реализован метод IMAPISupport::NewEntry . Поставщики адресных книг вызывают NewEntry , чтобы создать новую запись адресной книги, которая будет добавлена непосредственно в контейнер или будет использоваться для обработки исходящего сообщения.

Примечания для вызывающих методов

Если вы хотите добавить новую запись в конкретный контейнер, задайте для lpEIDContainer значение идентификатора записи контейнера, а cbEIDContainer — число байтов в идентификаторе записи.

Если вы хотите добавить новую запись в список получателей исходящего сообщения, задайте для параметра lpEIDContainer значение NULL, а cbEIDContainer — 0.

Если вы хотите разрешить пользователю клиентского приложения выбрать тип создаваемой записи, передайте 0 в cbEIDNewEntryTpl и NULL в lpEIDNewEntryTpl. NewEntry отображает разовую таблицу MAPI, список шаблонов, которые MAPI и каждый из поставщиков адресных книг в сеансе поддерживают. Каждый шаблон может создать запись получателя для одного или нескольких типов адресов.

Если вы хотите сохранить идентификатор новой записи, передайте допустимые указатели в параметры lpcbEIDNewEntry и lppEIDNewEntry . Вы несете ответственность за освобождение этого идентификатора записи после завершения работы с ним путем вызова функции MAPIFreeBuffer .

Чтобы использовать определенный шаблон для добавления новой записи в изменяемый контейнер, выполните следующую процедуру:

  1. Вызовите метод IMAPISupport::OpenEntry , чтобы открыть целевой контейнер, и задайте для параметра lpEntryID идентификатор записи контейнера.

  2. Вызовите метод IMAPIProp::OpenProperty целевого контейнера и задайте для параметра ulPropTagзначение PR_CREATE_TEMPLATES (PidTagCreateTemplates), а для параметра lpiid — IID_IMAPITable. Контейнер вернет разовую таблицу со списком всех поддерживаемых шаблонов для создания новых записей.

  3. Получите строку, представляющую шаблон для определенного типа записи, которую вы хотите создать. Столбец PR_ADDRTYPE (PidTagAddressType) указывает тип адреса, поддерживаемый шаблоном.

  4. Вызовите IMAPISupport::NewEntry и задайте для параметра lpEIDNewEntryTpl идентификатор записи выбранного шаблона. Идентификатор записи — это столбец PR_ENTRYID (PidTagEntryId) из строки шаблона в одноразовой таблице. Передайте 0 в cbEIDContainer и NULL в lpEIDContainer. Передайте допустимый указатель в параметре lppEIDNewEntry , если вы хотите сохранить идентификатор записи.

См. также

IMAPIProp::OpenProperty

IMAPISupport::OpenEntry

Каноническое свойство PidTagCreateTemplates

IMAPISupport: IUnknown