c# - para - Archivos adjuntos de Outlook.Add() no se muestra en el cuerpo del correo
macro para enviar correo con archivo adjunto pdf (4)
He encontrado el problema. Cambio el código para usar lo siguiente:
attachments.Add(ReleaseForm.ZipFile, Outlook.OlAttachmentType.olByValue, Type.Missing, Type.Missing);
Parece que los parámetros Position y DisplayName controlan lo que ocurre con un olByValue. Usando Type.Missing y ahora veo los archivos adjuntos correctamente en el correo electrónico.
Estoy creando un nuevo elemento de correo, en C # VS-2008 outlook 2007, y adjuntando un archivo. El primer problema es que no veo un área de archivo adjunto debajo de la línea de asunto que muestra el archivo adjunto. Si envío el correo electrónico, sus propiedades muestran que hay un archivo adjunto y que el tamaño del archivo adjunto ha aumentado. Simplemente no puedo verlo o extraer el archivo adjunto.
Aquí está el código que estoy usando:
Outlook.MailItem mailItem = (Outlook.MailItem)this.Application.CreateItem(Outlook.OlItemType.olMailItem);
attachments.Add(ReleaseForm.ZipFile, Outlook.OlAttachmentType.olByValue, 0, "DisplayName");
Estoy esperando que la parte "DisplayName" se muestre como el nombre del archivo adjunto y debería usar el nombre del archivo.
No llamo .Send () en el correo electrónico mediante programación, llamo mailItem.Display (verdadero) para mostrar el correo electrónico al usuario para cualquier edición final. En este punto puedo mirar las propiedades y ver que hay un archivo adjunto allí.
Si presiono enviar (enviándome a mí mismo) veo lo mismo, el archivo adjunto parece estar allí, pero no accesible.
Por cierto, si configuras Position en 0, tu adjunto quedará oculto:
Tengo un problema explícito como el suyo, pero incluso yo cambio el código como suyo, pero parece que todavía no funciona. De nuevo, parece que ya está en los elementos de correo pero no se muestra en la pantalla de elementos de correo. OK, tienes que asegurarte de que el cuerpo de mailItem no sea nulo para mostrar el mensaje
Un poco de una publicación anterior, pero como algunos otros mencionaron, usando
attachments.Add(path, Outlook.OlAttachmentType.olByValue, Type.Missing, Type.Missing);
tampoco me ayudó, así que pensé que compartiría un enfoque alternativo. La solución a este problema fue llamar a mailItem.Save();
justo antes de llamar a mailItem.Display(true);
. Lo que hará es actualizar el formulario de perspectiva para mostrar sus archivos adjuntos. También vale la pena señalar que guardará el mensaje en borradores. No es un problema si espera que el usuario envíe el correo electrónico, pero si lo cancela, se dejará en su carpeta Borrador.