vb.net 发邮件问题
做了一个vb.net 发发送邮件,用的是outlook 。关键代码如下各位帮我看看。谢了
- VB.NET code
Dim mail As New System.Net.Mail.MailMessage() mail.To.Add("angel@deer-group.com.cn") mail.From = New System.Net.Mail.MailAddress("angel@deer-group.com.cn") mail.Subject = " test" mail.Body = " test" SmtpMail.SmtpServer = " localhost" SmtpMail.Send("a", "b", "c", "dd")
[解决办法]
用outlook不好,用.net自带的:
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'创建发件连接,根据你的发送邮箱的SMTP设置填充
Dim a As System.Net.Mail.Attachment
Dim smtp As New System.Net.Mail.SmtpClient("smtp.163.com", 25)
'发件邮箱身份验证,参数分别为 发件邮箱登录名和密码
smtp.Credentials = New System.Net.NetworkCredential("bd123", "密码")
'创建邮件
Dim mail As New System.Net.Mail.MailMessage()
'邮件主题
mail.Subject = "邮件主题"
'主题编码
mail.SubjectEncoding = System.Text.Encoding.GetEncoding("GB2312")
'邮件正文件编码
mail.BodyEncoding = System.Text.Encoding.GetEncoding("GB2312")
'发件人邮箱
mail.From = New System.Net.Mail.MailAddress("bd123@163.com")
'邮件优先级
mail.Priority = System.Net.Mail.MailPriority.Normal
'HTML格式的邮件,为false则发送纯文本邮箱
mail.IsBodyHtml = True
'邮件内容
mail.Body = "邮件正文内容"
'添加收件人,如果有多个,可以多次添加
mail.To.Add("bd123@163.com")
'定义附件,参数为附件文件名,包含路径,推荐使用绝对路径
a = New System.Net.Mail.Attachment("d:\1\1.txt") : a.Name = "1.txt" : mail.Attachments.Add(a) '加入附件,附件文件名,及用于收件人收到附件时显示的名称
a = New System.Net.Mail.Attachment("d:\gps.txt") : a.Name = "gps.txt" : mail.Attachments.Add(a) '加入附件,附件文件名,及用于收件人收到附件时显示的名称
'发送邮件
Try
smtp.Send(mail)
MessageBox.Show("发送成功")
Catch
MessageBox.Show("发送失败")
Finally
mail.Dispose()
End Try
End Sub
End Class