Bir öğeyi Outlook'tan gönderildiğinde işlem yapmak için ApplicationEvents_11_ItemSendEventHandler
(bkz. http://msdn.microsoft.com/en-us/library/microsoft.office.interop.outlook.applicationevents_11_itemsendeventhandler.aspx) kullanıyorum.Outlook'ta "Öğe Gönderildi" Olayı
Ancak, böyle gönderici olarak, belirli bilgileri elde edemeyebiliriz değilim doğrusu "gönderildi" den, "gönder" bu olay yangınları gibi alternatif bir olay olduğunu var mı zamanı vb
gönderilen yangınlar 'dan sonra ürün gerçekten gönderildi? Bu blog yazısını okudum; http://easyvsto.wordpress.com/2010/07/27/how-to-save-mail-content-when-a-mail-is-sent-from-outlook/ Ancak, bir kullanıcının bu özelliği devre dışı bırakabileceğini düşünerek gönderilen öğeler klasöründe görünen öğelere bağlı kalmamaya özen gösteriyorum.
Düzenleme: Ben aslında "gönderilen öğeler klasörünü izlemek" yaklaşımı denedim ve ItemAdd
olay sadece ben Outlook'u yeniden başlatana kadar yine mi o zaman, ben göndermek ilk e-posta için ateş gibi görünüyor olduğunu fark ettiğimi eklemek gerekir . Benim kodum şu şekildedir;
var sentMail = Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderSentMail);
sentMail.Items.ItemAdd += new Outlook.ItemsEvents_ItemAddEventHandler(Items_ItemAdd);
Ve yöntemi
...void Items_ItemAdd(object item)
{
MessageBox.Show(((Outlook.MailItem)item).Subject);
}
Sen Öğeler (bir sınıf değişkeni olarak) canlı nesne tutmalısınız olaylar için ateş. Sizin durumunuzda derleyici, sentMail.Items nesnesini tutmak için geçici bir değişken oluşturur. Bu değişken çöp toplandığında olaylar durur. –