我正在使用 LotusScript 将文档中的附件提取到用户的本地计算机。该文档有两个富文本字段Body1
,Body2
而且很多时候只有其中一个有附件。我正在使用以下代码片段:
Dim doc As NotesDocument
Dim richTextItem As NotesRichTextItem
.....
.....
If doc.Hasembedded Then
Set richTextItem = doc.Getfirstitem("Body1")
ForAll o In richTextItem.Embeddedobjects
Call o.ExtractFile(dirName + "\" + o.Name)
End ForAll
Set richTextItem = doc.Getfirstitem("Body2")
ForAll o In richTextItem.Embeddedobjects
Call o.ExtractFile(dirName + "\" + o.Name)
End ForAll
End If
问题在于,如果其中Body1
没有附件并且Body2
确实如此,则上述代码会引发Type mismatch
on 语句错误,ForAll o In richTextItem.Embeddedobjects
反之亦然,因为该富文本项中没有嵌入对象。也doc.Embeddedobjects
不起作用,因为附件存在于富文本项目中。并且NotesRichTextItem
该类没有Hasembedded
可用于检查其中是否存在附件的属性。
有什么办法摆脱这种情况?