IAddrBook::NewEntry
Hace referencia a: Outlook 2013 | Outlook 2016
Agrega un nuevo destinatario 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
[in] Máscara de bits de marcas que controla el tipo de texto que se usa. Se puede establecer la marca siguiente:
MAPI_UNICODE
Las cadenas pasadas están en formato Unicode. Si no se establece la marca de MAPI_UNICODE, las cadenas están en formato ANSI.
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 donde se va a agregar el nuevo destinatario. Si el parámetro cbEIDContainer es cero, el método NewEntry devuelve un identificador de entrada de destinatario y una lista de plantillas como si se llamara al método IAddrBook::CreateOneOff .
cbEIDNewEntryTpl
[in] Recuento de bytes en el identificador de entrada al que apunta el parámetro lpEIDNewEntryTpl .
lpEIDNewEntryTpl
[in] Puntero a una plantilla única que se usará para crear el nuevo destinatario. Si cbEIDNewEntryTpl es cero y lpEIDNewEntryTpl es NULL, NewEntry muestra un cuadro de diálogo con el que el usuario puede 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 del nuevo destinatario.
Valor devuelto
S_OK
La nueva entrada de la libreta de direcciones se creó correctamente.
Comentarios
El método NewEntry crea una nueva entrada de libreta de direcciones, que se agregará directamente a un contenedor o que se usará para dirigir 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 cero.
Si desea permitir que el usuario de una aplicación cliente seleccione el tipo de entrada que se va a crear, pase cero en cbEIDNewEntryTpl y NULL en lpEIDNewEntryTpl. El método NewEntry muestra la tabla única MAPI, una lista de plantillas admitidas por MAPI y por cada proveedor de libreta de direcciones de la sesión. 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:
Llame al método IMAPISession::OpenEntry para abrir el contenedor de destino y establezca el parámetro lpEntryID en el identificador de entrada del contenedor.
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.
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.
Llame al método NewEntry y establezca lpEIDNewEntryTpl en el identificador de entrada de la plantilla seleccionada. El identificador de entrada será la columna PR_ENTRYID (PidTagEntryId) de la fila de la plantilla en la tabla de un solo acceso. Pase cero 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.