从Outlook发件箱文件夹发送电子邮件后,如何修改电子邮件



当前,在Outlook Desktop用户单击"发送"后,我的Outlook加载项将对电子邮件进行一些修改,并将其发送到第三方存储库进行额外处理。然后,它将发送给收件人。

问题

如果收件人是第三方存储库的注册用户,则收件人将收到一个通知,说明他/她已收到一封电子邮件,并且能够在从Outlook实际发送电子邮件之前在存储库中查看该电子邮件。在大多数情况下,这通常不是问题,因为在存储库和电子邮件客户端中接收电子邮件所需的时间大致相同。只有当"发送延迟"规则中的时间设置为很长时间(例如超过30分钟(时,这才会成为一个真正的问题,因为收件人会看到他们在第三方存储库帐户中收到了电子邮件,但尚未在电子邮件客户端中收到。

因此,我希望这些修改和处理遵守"发送延迟"规则,即,如果设置了"发送延迟规则",则修改和发送到第三方存储库仅在计划发送时执行。顺便说一句,这些修改当前在Microsoft.Office.Interop.Outlook.ItemEvents_Event的Send和Microsoft.Office.Interop.Outlook.Application的ItemSend事件中处理。

问题

从Outlook的"发件箱"文件夹中释放电子邮件后,是否有我可以处理的事件触发?

ItemSend事件允许取消发送电子邮件的默认设置。因此,您可以将邮件放在任何文件夹中进行处理,即对电子邮件进行一些修改并将其发送到第三方存储库。当您完成了所需的操作并准备发送电子邮件时,您可以调用send方法重新提交邮件。要识别是否需要处理的电子邮件,您可以考虑添加任何标记,如用户属性。

不需要使用发送延迟或任何其他替代方案。请注意,当项目发送给收件人时,默认情况下会将电子邮件放在Sent Items文件夹中。

从Outlook的"发件箱"文件夹中释放电子邮件后,是否有我可以处理的事件触发?

您可以处理来自Sent Items文件夹的Items类的ItemAdd事件,以了解电子邮件的确切发送时间。SaveSentMessageFolder属性可以设置为指示一个文件夹,该文件夹表示发送电子邮件后将保存电子邮件副本的文件夹。因此,可以使用任何文件夹,而不是Sent Items文件夹。在ItemSend中,如果需要,您可以查看属性值并订阅ItemAdd事件。

最新更新