1

たくさんのドキュメントやその他の添付ファイルを保存するWindowsフォームアプリケーション、つまりドキュメント管理システムがあります。その機能の1つは、一連の添付ファイルを受信者に電子メールで送信する機能です。これは、Outlookを自動化して新しい電子メールを作成するだけで、すべてのファイルをそのメッセージに添付するだけで、ユーザーは通常どおりOutlook2010を介して電子メールを送信します。

何か奇妙なことが起こります。システム内の添付ファイルの一部は、実際には.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
4

0 に答える 0