1

我正在尝试构建的加载项必须根据发件人的地址更改新邮件的密件抄送字段。

由于我是 Outlook 编程新手,因此我找到了这篇文章并构建了示例加载项。他们使用的事件是NewInspector,正如您所读到的,它在新的 Outlook 项目窗口出现之前被触发。但是,如果我们将此代码粘贴到 NewInspector 事件处理程序中:

        Outlook.MailItem item = Inspector.CurrentItem as Outlook.MailItem;
        if (item != null)
        {
            if (item.EntryID == null)
            {
                if (item.SenderEmailAddress == "...")
                    item.BCC = "....";
            }
        }

不起作用,因为当窗口刚刚加载时,发件人的地址是空的。

我考虑过使用Send事件,创建的每封新邮件都会将其 Send 事件处理程序附加到一个方法,该方法又会在发送电子邮件时根据发件人的地址更改密件抄送。

唯一的问题是,由于某种原因,我在 VS 2010 Pro 中看不到 Send 事件。

还有其他方法可以做我需要的吗?

4

1 回答 1

1

您需要使用 的事件接口( Outlook.ItemEvents_10_Event ),Outlook.MailItem因为它有一个方法事件绑定到相同的名称 ( Send)。这只是您在 Outlook 对象模型中必须注意的怪癖之一。这应该适合你:

((Outlook.ItemEvents_10_Event)MailItem).Send += new Outlook.ItemEvents_10_SendEventHandler(MailItem_Send);
于 2012-07-13T14:31:29.427 回答