我们为客户开发了一个C#Outlook插件,允许他们将电子邮件发送到他们的数据管理系统(即陷阱电子邮件数据,输入一些额外的元数据以及DMS中存储的位置)。这可以通过收件箱(文件)中的电子邮件或发送/转发的电子邮件(发送和文件)完成。这一切都很有效。
问题是我们的客户端还使用了另一个加载项,该加载项会捕获ItemSend事件并阻止我们的加载项在尝试发送和发送电子邮件时完成。在将电子邮件数据提交到DMS后,我们通过调用Outlook的MailItem.Send方法发送它,该方法引发ItemSend事件,导致其加载项弹出并停止工作。我们不能禁用它们,因为它们将其他功能用于其业务流程,我们也无法访问其代码来禁用ItemSend事件处理。
有没有办法在不提出ItemSend事件的情况下发送电子邮件?
答案 0 :(得分:0)
仅当您使用扩展MAPI(C ++或Delphi)或扩展MAPI包装器(例如Redemption时,可以使用任何语言)。
答案 1 :(得分:0)
您可以自由使用低级API - 来自托管语言的扩展MAPI(在您的情况下为C#)。没有人禁止这样做。 Outlook只是该API的一个重要包装(以及Redemption)。有关详细信息,请参阅MAPI and .Net。