Compartir a través de


IMAPISupport::NewEntry

Hace referencia a: Outlook 2013 | Outlook 2016

Agrega un nuevo destinatario directamente a un contenedor de libreta de direcciones o a la lista de destinatarios de un mensaje saliente.

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

Parameters

ulUIParam

[in] Identificador de la ventana primaria del cuadro de diálogo.

ulFlags

[entrada] Reservado; debe ser cero.

cbEIDContainer

[in] Recuento de bytes en el identificador de entrada al que apunta el parámetro lpEIDContainer .

lpEIDContainer

[in] Puntero al identificador de entrada del contenedor para recibir la nueva entrada. Si cbEIDContainer es 0 y lpEIDContainer es NULL, NewEntry crea un identificador de entrada único que es el mismo tipo que se genera mediante una llamada al método IMAPISupport::CreateOneOff .

cbEIDNewEntryTpl

[in] Recuento de bytes en el identificador de entrada al que apunta el parámetro lpEIDNewEntryTpl .

lpEIDNewEntryTpl

[in] Puntero al identificador de entrada de la plantilla que se va a usar para crear la nueva entrada. Si cbEIDNewEntryTpl es 0 y lpEIDNewEntryTpl es NULL, NewEntry muestra un cuadro de diálogo que permite al usuario seleccionar de una lista de plantillas para agregar nuevas entradas.

lpcbEIDNewEntry

[out] Puntero al recuento de bytes en el identificador de entrada al que apunta el parámetro lppEIDNewEntry .

lppEIDNewEntry

[out] Puntero a un puntero al identificador de entrada de la entrada recién creada.

Valor devuelto

S_OK

La nueva entrada se creó correctamente.

Comentarios

El método IMAPISupport::NewEntry se implementa para los objetos de compatibilidad del proveedor de libretas de direcciones. Los proveedores de libretas de direcciones llaman a NewEntry para crear una nueva entrada de libreta de direcciones que se agregará directamente a un contenedor o que se usará para abordar un mensaje saliente.

Notas para los llamadores

Si desea que la nueva entrada se agregue a un contenedor específico, establezca lpEIDContainer en el identificador de entrada del contenedor y cbEIDContainer en el recuento de bytes en el identificador de entrada.

Si desea que la nueva entrada se agregue a la lista de destinatarios de un mensaje saliente, establezca lpEIDContainer en NULL y cbEIDContainer en 0.

Si desea permitir que el usuario de una aplicación cliente seleccione el tipo de entrada que se va a crear, pase 0 en cbEIDNewEntryTpl y NULL en lpEIDNewEntryTpl. NewEntry muestra la tabla única MAPI, una lista de plantillas que MAPI y cada uno de los proveedores de libreta de direcciones de la sesión admiten. Cada plantilla puede crear una entrada de destinatario para uno o varios tipos de direcciones.

Si desea conservar el identificador de entrada de la nueva entrada, pase punteros válidos en los parámetros lpcbEIDNewEntry y lppEIDNewEntry . Usted es responsable de liberar este identificador de entrada cuando haya terminado con él llamando a la función MAPIFreeBuffer .

Para usar una plantilla determinada para agregar una nueva entrada a un contenedor modificable, use el procedimiento siguiente:

  1. Llame al método IMAPISupport::OpenEntry para abrir el contenedor de destino y establezca el parámetro lpEntryID en el identificador de entrada del contenedor.

  2. Llame al método IMAPIProp::OpenProperty del contenedor de destino y establezca el parámetro ulPropTag en PR_CREATE_TEMPLATES (PidTagCreateTemplates) y el parámetro lpiid en IID_IMAPITable. El contenedor devolverá una tabla única que enumera todas las plantillas que admite para crear nuevas entradas.

  3. Recupere la fila que representa la plantilla para el tipo determinado de entrada que desea crear. La columna PR_ADDRTYPE (PidTagAddressType) indica el tipo de dirección compatible con la plantilla.

  4. Llame a IMAPISupport::NewEntry y establezca el parámetro lpEIDNewEntryTpl en el identificador de entrada de la plantilla seleccionada. El identificador de entrada es la columna PR_ENTRYID (PidTagEntryId) de la fila de la plantilla en la tabla de unidirección. Pase 0 en cbEIDContainer y NULL en lpEIDContainer. Pase un puntero válido en el parámetro lppEIDNewEntry si desea conservar el identificador de entrada de la nueva entrada.

Vea también

IMAPIProp::OpenProperty

IMAPISupport::OpenEntry

Propiedad canónica PidTagCreateTemplates

IMAPISupport: IUnknown