В библиотеке sharpPDF я создаю поток в pdf-памяти, и я хочу отправить его напрямую по электронной почте. Но строка ms.Seek(.... дает ObjectDisposedException;
Невозможно получить доступ к закрытому потоку.
Метод pdf.CreatePDF принимает либо строку (output) fileName, либо поток (out). Но я думаю, что это также закрывает поток? Я не привык много работать с потоками, поэтому, если вы могли бы посоветовать, как это сделать?
Исходный код sharpPDF метода CreatePDF можно найти здесь:
http://www.java2s.com/Open-Source/CSharp/PDF/SharpPDF/sharpPDF/pdfDocument.cs.htm
Public Sub SendPDF()
Dim pdf As New sharpPDF.pdfDocument("Title", "Author")
'....Generate pdf content
Dim ms As New IO.MemoryStream
pdf.CreatePDF(ms)
Dim email As New EmailService
email.Send(ms)
End Sub
Public Class EmailService
Public Sub Send(Byval ms as Stream)
ms.Seek(0, IO.SeekOrigin.Begin)
Dim atc As New Attachment(ms, "Report.pdf")
mail.Attachments.Add(atc)
'....set other email parameters
client.SendAsync(mail, mail.Subject)
End Sub
End Class