0

我有一个邮寄数据库应用程序,我发现偶尔会收到一封电子邮件,其中包含不属于正文字段的附件,因此 rtItem.EmbeddedObjects 无法“看到”。

如果它不在身体中,我如何识别有一个附件,一旦我这样做了,我如何处理它?

我需要确定附件的类型(PDF、JPG、DOC、XLS 等),将其分离,然后根据扩展名进行处理。

下面是对 Body (RTF) 字段和关联的 EmbeddedObjects 进行所有检查的各种 If 语句。这不会捕捉到身体“外部”的附件。

Set rtItem = mailDoc.Getfirstitem("Body")
        If ( rtItem.Type = RICHTEXT ) Then
            If Not (IsEmpty(rtItem.EmbeddedObjects)) Then    
                ForAll o In rtItem.EmbeddedObjects
                    If (o.Type = EMBED_ATTACHMENT) Then
                        noAttachment = True                            
                    Else
                        noAttachment = True                            
                    End If                        
                End ForAll
            Else
                noAttachment = True                            
            End if
        Else
            noRTF = True
        End If       

我还有一个正文中没有任何内容的文档,但 $File 包含附件名称。你怎么找到的?

4

2 回答 2

1

您需要使用 NotesDocument 的 EmbeddedObjects 属性来获取这些附件。该属性加上所有富文本项的所有 EmbeddedObjects 属性的联合使您可以访问所有附件。请注意,通常您只需要担心 Body 富文本项。

于 2012-05-07T15:29:18.893 回答
0

仅供参考,当邮件服务器磁盘空间不足或病毒扫描程序阻止访问附件时,我们遇到了类似的问题

于 2012-05-08T06:56:48.173 回答