【发布时间】:2017-09-14 02:52:02
【问题描述】:
我尝试通过电子邮件传送一些服务信息。在发送之前将其添加到电子邮件正文中。在 Outlook 中打开电子邮件时,有没有办法从 MailItem.HtmlBody 中提取和删除此信息。
【问题讨论】:
标签: c# visual-studio vsto outlook-addin
我尝试通过电子邮件传送一些服务信息。在发送之前将其添加到电子邮件正文中。在 Outlook 中打开电子邮件时,有没有办法从 MailItem.HtmlBody 中提取和删除此信息。
【问题讨论】:
标签: c# visual-studio vsto outlook-addin
如果您想在邮件到达用户邮箱后立即删除信息,您可以处理 Application 类的 NewMailEx 事件,该事件在收件箱中收到新邮件时触发。对于 Microsoft Outlook 处理的每个收到的项目,此事件都会触发一次。该项目可以是几种不同的项目类型之一,例如 MailItem、MeetingItem 或 SharingItem。 EntryIDsCollection 字符串包含对应于该项目的条目 ID。您可以使用 EntryIDCollection 数组中返回的 Entry ID 来调用NameSpace.GetItemFromID 方法并处理该项目。
可以在检查器和资源管理器窗口中查看 Outlook 项目。
对于资源管理器,您可以处理资源管理器类的SelectionChange 事件,当用户以编程方式或通过与用户界面交互选择不同的或附加的 Microsoft Outlook 项目时会触发该事件。当用户(以编程方式或通过用户界面)单击或切换到包含项目的不同文件夹时,也会发生此事件,因为 Outlook 会自动选择该文件夹中的第一个项目。
对于检查器,您可以处理 Inspectors 类的 NewInspector 事件,无论何时打开新的检查器窗口,无论是作为用户操作的结果还是通过程序代码,都会触发该事件。该事件在创建新的 Inspector 对象之后但在检查器窗口出现之前发生。所以,我建议等待第一个 Activate 事件来访问打开的 MailItem 实例。
【讨论】: