- 在 Outlook 插件中,我注册了两个事件处理程序,用于
MailItem.Forward
和MailItem.Open
- 当我收到Forward时,我得到一个引用
MailItem
为新消息创建的新对象的对象参数。 - 当我查看
object.HTMLBody
(或 Body)时,它引用了与原始邮件项目相同的对象(转发之前)。此对象包含原始消息的未修改值。 - 当我收到Open事件(与之前的 Forward 事件相同的对象)时,该事件引用与 forward 相同的对象,但它已经包含一个新的
HTMLBody
(和 Body) - 它包括添加到原始消息中的转发标题等。
问题:
如果我尝试在步骤 3) 中设置一个新的 HTMLBody对象(在 Forward 事件处理程序中),它没有任何效果。
从事件处理程序返回后,我在 4)(在 Open 事件处理程序中)得到的是经过转换的原始消息,在我替换HTMLBody
.
因此,在 Forward 和 Open 事件之间发生了一些事情,它替换了HTMLBody
新对象的 ,但基于其旧值(或原始消息的值)。
那是怎么回事?
如何替换HTMLBody
转发的消息,而不影响原始消息的正文,但在它根据转发过程进行转换之前?