NotesDocument.GetMIMEEntity始终不返回任何内容

问题描述 投票:0回答:1

我正在尝试创建一个Excel VBA宏来访问Lotus Notes邮箱的电子邮件文档。

以下代码在将"Body"设置为NotesItemNotesDocument.GetMIMEEntity()的情况下获得NotesDocument后,检查Session.ConvertMime True的类型以及False是否工作。

Sub Test()
  Dim Session As NotesSession, DB As NotesDatabase, Doc As NotesDocument
  Set Session = GetSession("xxx")
  Set DB = Session.GetDatabase("", "yyy")

  Session.ConvertMime = False
  Set Doc = DB.AllDocuments.GetFirstDocument
  Debug.Print TypeName(Doc.GetFirstItem("Body")), Doc.GetMIMEEntity Is Nothing

  Session.ConvertMime = True
  Set Doc = DB.AllDocuments.GetFirstDocument
  Debug.Print TypeName(Doc.GetFirstItem("Body")), Doc.GetMIMEEntity Is Nothing

  Debug.Print TypeName(Doc.CreateMIMEEntity("Body2"))
End Sub

我期望得到这个结果:

IMIMEEntity False
IRichTextItem True
IMIMEEntity

相反,我得到这个:

IRichTextItem True
IRichTextItem True
IMIMEEntity
vba lotus-notes lotusscript
1个回答
0
投票

您真的确定数据库“ AllDocuments”集合中的第一个文档是MIME邮件吗?

“ ConvertMime”-参数仅在存在要转换的MIME时才相关。但是邮件可以完全通过NRPC路由,并且永远不会转换为MIME。使用默认设置,来自使用Notes客户端的本机Notes用户发给另一Notes用户的每封邮件将是NotesRichtext而不是Mime ...

所以:您对“正常” Notes / Domino环境中的大量邮件的期望是错误的。

© www.soinside.com 2019 - 2024. All rights reserved.