VSTO邮件发送事件
本文关键字:事件 VSTO | 更新日期: 2023-09-27 18:14:17
我有一个小问题与VSTO。我需要得到发送的邮件,并坚持它的内容。有一种on MailSent事件吗?
我现在找到的唯一解决方案是在SentItems文件夹上连接ItemAdd事件。
Outlook.Folder sentItems =
Application.Session.GetDefaultFolder(Outlook.OlDefaultFolders.olFolderSentMail)
as Outlook.Folder;
sentItems.Items.ItemAdd += new ItemsEvents_ItemAddEventHandler(SentItemFolder_ItemAdd);
private void SentItemFolder_ItemAdd(object addedItem)
{
Outlook.MailItem newItem = (Outlook.MailItem)addedItem;
MessageBox.Show(newItem.EntryID);
}
这真的是唯一的方法吗?或者你们知道什么更优雅的解决方案吗?
您可以使用ItemSend
事件,如下所示:
private void ThisAddIn_Startup(object sender, System.EventArgs e)
{
this.Application.ItemSend += new Microsoft.Office.Interop.Outlook.ApplicationEvents_11_ItemSendEventHandler(Application_ItemSend);
}
private void Application_ItemSend(object Item, ref bool Cancel)
{
// Code to run when item is being sent
}