リフレクターで調べたところ、関数のパラメーターにオブジェクト トークンを持つ sendasync(smtpclient) が byval であるようです。
コールバック関数で添付ファイルを解放しようとするのは理にかなっていますか?
どこでも人々 (私自身を含む) は sendasync(mailmessage,mailmessage) を行っているようです
そしてコールバック(SendCompletedCallback)で次のようなことをしています:
Dim mail As Net.Mail.MailMessage = CType(e.UserState, Net.Mail.MailMessage)
For i = (mail.Attachments.Count - 1) To 0 Step -1
mail.Attachments(i).Dispose()
Next
mail.Dispose()
しかし、sendasync は byval であるため、元の添付ファイルを破棄するべきではありませんよね?
私の場合、添付ファイルはメモリストリームです