关于发送邮件,高手帮帮忙

bluesmile979 2005-01-11 11:36:38
不知道是不是大家都不会还是大家都不注意,问题找不到答案。
使用smtpmail.send()

1。我发送邮件结束的时候,附件要删除掉,发送成功时没问题,可是失败的时候,删除就失败。怀疑是底层smtpmail.send()执行时,打开了对文件的操作流,失败的时候没有关掉。但是.net里面没有办法看到源代码,无法确定问题到底是不是这样,有没有高手遇到过。

2。发送失败的时候,网上的例子都是大的异常捕捉掉就算完了。我想区别失败的原因。看到有errorcode 和httpexception.message 但是具体这些异常值都有哪些找不到。

高手帮帮忙吧,指点一下。
...全文
346 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
bluesmile979 2005-01-12
  • 打赏
  • 举报
回复
up
liulxmooo 2005-01-11
  • 打赏
  • 举报
回复
up
bluesmile979 2005-01-11
  • 打赏
  • 举报
回复
我的代码大概是这个样子的,发送成功的话文件是能够删除的,但是如果发送失败,文件就没办法删除了,能不能帮忙看看代码。还是觉得是sendmail()方法里面没有把自己占用的资源放掉的原因。

Private Function sendMail() As Integer
Dim ret As Integer = Me.sucessCode
Dim fileName As String
Dim mailObj As New MailMessage
Try
mailObj.From = valueFromAdd
mailObj.To = valueTo
mailObj.Cc = valuecc
mailObj.Bcc = valuebcc
mailObj.Subject = valueTitle
mailObj.Body = valueText
mailObj.BodyFormat = MailFormat.Html
mailObj.Priority = MailPriority.High

For Each fileName In valueFileNames
mailObj.Attachments.Add(New MailAttachment(Server.MapPath("temp\" + fileName)))
Next

SmtpMail.Send(mailObj)
Catch ex As Exception
ret = Me.sysErrorCode
End Try
For Each fileName In valueFileNames
try
File.Delete(Server.MapPath("temp\" + fileName))
Catch ex As Exception
End Try
Next
Return ret
End Function
LoveCherry 2005-01-11
  • 打赏
  • 举报
回复
up
心情解码 2005-01-11
  • 打赏
  • 举报
回复
up




-------
3tzjq 2005-01-11
  • 打赏
  • 举报
回复
1,不会啊!用个数据组来保存附件的存在路径,然后再用File.Delete(FileName,True)方法来删除不会有问题。
try
'发送邮件的代码
catch ex as exception
'错误处理
finally
‘不管是否成功,都要删除附件
try
'在这里循环删除附件
catch io as FileNotFoundException
messagebox.show("文件不存在!")
end try
end try


2,.Net1.1版本没有提供SmtpMail的异常处理。一般都用Exception

16,555

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧