Outlook 2010附件丢失

时间:2012-08-31 11:08:15

标签: windows winforms email outlook email-attachments

我有Windows Forms应用程序,它存储大量文档和其他附件 - 即文档管理系统。它的一个功能是将一堆附件通过电子邮件发送给收件人。它通过简单地自动化Outlook编写新电子邮件并将所有文件附加到该邮件,并且用户通过Outlook 2010正常发送电子邮件来实现此目的。

奇怪的事发生了。系统中的一些附件实际上是.msg文件(即已存储在文档管理系统中的其他电子邮件)。如果我们创建的电子邮件包含.msg附件,则当电子邮件到达目的地时,将删除所有附件。真正奇怪的是,这会影响一些收件人,但不是全部。但至关重要的是,只有当.msg文件在电子邮件的附件中时才会发生。如果电子邮件不包含.msg文件,则每次都可以正常工作。

有什么想法吗?

这是代码:

    Public Shared Sub CreateEmail(ByVal emailAddressTo As String, ByVal subject As String, ByVal bodyText As String, ByVal docs As DespatchDocumentFileList)
        ' create the email
        Dim olApp As Object = CreateObject("Outlook.Application")   ' New Outlook.Application
        Dim olMail As Object = olApp.CreateItem(0)                  ' Outlook.OlItemType.olMailItem

        ' init the email
        With olMail
            .BodyFormat = 2                                         ' Outlook.OlBodyFormat.olFormatHTML
            .Subject = subject
            .To = emailAddressTo
            .Body = bodyText

            For Each doc As DespatchDocumentFileInfo In docs
                Dim DespatchFile As InternalClaimsLibrary.Despatch.DespatchDocumentFile = InternalClaimsLibrary.Despatch.DespatchDocumentFile.GetDespatchDocumentFile(doc.ID)
                Dim FileName As String

                FileName = InternalClaimsLibrary.FileUtils.FileHelper.CreateFileFromByteArray(DespatchFile.DespatchedImageData, IO.Path.GetFileName(DespatchFile.DespatchedFileName))

                .Attachments.Add(FileName)
            Next

        End With

        olMail.Display()

    End Sub

0 个答案:

没有答案