visual the studio primary pias office microsoft example c# outlook ms-office office-interop office-2007

c# - the - Cómo responder a un elemento de correo de Outlook usando.net



microsoft.office.interop.excel.dll version 15 download (1)

El destinatario debe resolverse primero. Y no puede establecer la propiedad AddressEntry.Address, incluso si fuera configurable, no apunta a la tabla de destinatarios del mensaje.

Outlook.Recipient rcp = theMail.Recipients.Add("Joe Blow <[email protected]>"); rcp.Resolve();

Estoy escribiendo un complemento de Outlook 2007 que compone una cita comercial en respuesta a una consulta por correo electrónico. Escribo la cita usando formularios de Windows. Todo funciona bien hasta que llego al punto de responder el mensaje original con la información de la cita.

private void btnSend_Click(object sender, EventArgs e) { Outlook.MailItem theMail = ((Outlook._MailItem)quote.mailItem).Reply(); theMail.Subject = "This is the quote"; theMail.Body = &lt;Some html composed elsewhere&gt;; Outlook.Recipient rcp = theMail.Recipients.Add("Joe Blow"); Outlook.AddressEntry ae = rcp.AddressEntry; ae.Address = "[email protected]"; }

Donde quote.mailItem es la solicitud de correo electrónico entrante. Cuando ejecuto el código, lanza una excepción ejecutando rcp.AddressEntry . El error es

''No se puede encontrar un objeto''

. Lo que necesito hacer es agregar y eliminar destinatarios, así como establecer los campos CC y BCC en el presupuesto antes de enviarlo. Los destinatarios pueden no estar en la libreta de direcciones. He hecho esto con otras bibliotecas de correo y debería ser simple, pero parece que estoy ladrando el árbol equivocado para Outlook.

EDITAR Encontrado - gracias Dmitry por señalarme en la dirección correcta.

Outlook.Recipient rcp = theMail.Recipients.Add("joe blow <[email protected]>"); rcp.Type = (int)Outlook.OlMailRecipientType.olTo;