estoy usando ApplicationEvents_11_ItemSendEventHandler
(ver http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook.applicationevents_11_itemsendeventhandler.aspx) para hacer algo de procesamiento cuando un artículo se envía desde Outlook.Evento en "artículo enviado" en Outlook
Sin embargo, como este evento se desencadena en "Enviar", en lugar de "enviado", soy incapaz de obtener cierta información, tales como el remitente, la hora, etc. enviado
¿Hay un evento alternativo que los incendios después de ¿el artículo ha enviado realmente? He leído esta publicación de blog; http://easyvsto.wordpress.com/2010/07/27/how-to-save-mail-content-when-a-mail-is-sent-from-outlook/, pero desconfío de los elementos que aparecen en la carpeta de elementos enviados, teniendo en cuenta que un usuario puede desactivar esta función.
Editar: debo añadir que en realidad he probado el enfoque de "ver la carpeta de los elementos enviados" y he notado que el evento ItemAdd
sólo parece al fuego durante el primer correo electrónico que envío, entonces no otra vez hasta que reinicie Outlook . Mi código es el siguiente;
var sentMail = Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderSentMail);
sentMail.Items.ItemAdd += new Outlook.ItemsEvents_ItemAddEventHandler(Items_ItemAdd);
Y mi método ...
void Items_ItemAdd(object item)
{
MessageBox.Show(((Outlook.MailItem)item).Subject);
}
Debe mantener los artículos Objeto vivo (en una variable de clase) para los eventos a disparar En su caso, el compilador crea una variable temporal para mantener el objeto sendMail.Items. Cuando esa variable es basura recolectada, los eventos dejarán de disparar. –