1

我正在尝试使用 itextsharp 发送 PDF 文件,电子邮件发送正常但没有 pdf 附件可以告诉我我的代码有什么问题吗?
这是我的代码:

Dim pdfFile As MemoryStream = New MemoryStream()
            Dim d As Document = New Document(PageSize.A4, 60, 60, 40, 40)
            Dim w As PdfWriter = PdfWriter.GetInstance(d, pdfFile)
            w.Open()
            w.Add(New Paragraph("do foo something "))

            Dim message As New MailMessage()
            message.From = New MailAddress("******")
            message.To.Add(New MailAddress("***************"))
            message.Subject = "new image "
            message.Body = "this is the apak chart img"
            Dim data As New Attachment(pdfFile, New System.Net.Mime.ContentType("application/pdf"))
            message.Attachments.Add(data)
            Dim client As New SmtpClient()
            client.Host = "smtp.gmail.com"
            client.Credentials = New NetworkCredential("*****", "*******")
            client.EnableSsl = True
            client.Port = 587
            client.Send(message)
4

1 回答 1

2

尝试刷新 writer 并倒带流:

Dim pdfFile As MemoryStream = New MemoryStream()
Dim d As Document = New Document(PageSize.A4, 60, 60, 40, 40)
Dim w As PdfWriter = PdfWriter.GetInstance(d, pdfFile)
w.Open()
w.Add(New Paragraph("do foo something "))

w.CloseStream = false;
d.Close();
pdfFile.Position = 0;

改编自:iTextSharp - 在电子邮件附件中发送内存中的 pdf

于 2012-05-24T21:46:37.873 回答