私はこの質問からこのコードを持っています:
Memory Stream を使用して PDF ファイルを system.net.mail.attachment として生成する
メモリ内にメールの添付ファイルを作成するのに役立ちます。
Imports System.IO
Imports System.Net.Mail
Imports System.Text.ASCIIEncoding
Imports System.net.Mime
Public Sub SendMail(ByVal att As String, Optional ByVal filename As String _
= "Attachment.csv")
Dim sendMail As New SmtpClient
Dim mail As New MailMessage
Using MemoryStream = New MemoryStream
If att.Length <> 0 Then
Dim data As Byte() = ASCII.GetBytes(att)
MemoryStream.Write(data, 0, data.Length)
MemoryStream.Seek(0, SeekOrigin.Begin)
MemoryStream.Position = 0
Dim content As New Net.Mime.ContentType()
content.MediaType = MediaTypeNames.Application.Octet
content.Name = filename
Dim Attach As Attachment
Attach = New Attachment(MemoryStream, content)
mail.Attachments.Add(Attach)
End If
sendMail.DeliveryMethod = SmtpDeliveryMethod.Network
sendMail.Host = "SERVER"
sendMail.UseDefaultCredentials = False
sendMail.Credentials = New System.Net.NetworkCredential("UN", "PW")
sendMail.Send(mail)
End Using
End Sub
次のエラーが表示されます。
アクセス可能な 'New' を縮小変換なしで呼び出すことができないため、オーバーロードの解決に失敗しました:
'Public Sub New(contentStream As System.IO.Stream, contentType As System.Net.Mime.ContentType)': 引数一致パラメーター 'contentStream' は 'Object' から 'System.IO.Stream' に絞り込まれます。
'Public Sub New(fileName As String, contentType As System.Net.Mime.ContentType)': パラメーター 'fileName' に一致する引数は、'Object' から 'String' に絞り込まれます。
Dim Attach As Attachment
Attach = New Attachment(MemoryStream, content)
この行で。
どうすればこれを修正できますか?