SMTP.Send(Mail)错误

时间:2012-11-28 03:25:36

标签: vb.net smtp

这是我的代码(是的,我审查了我的电子邮件/密码)(当你点击按钮时)

Dim Mail As New MailMessage
Mail.Subject = "test email"
Mail.To.Add("*****")
Mail.From = New MailAddress("*****") '
Mail.Body = "This is an email!"
Dim SMTP As New SmtpClient("smtp.gmail.com")
SMTP.EnableSsl = True
SMTP.Credentials = New System.Net.NetworkCredential("*****", "*****")
SMTP.Port = 587
SMTP.Send(Mail)
MsgBox("Sent Successfully")

SMTP服务器需要安全连接,或者客户端未经过身份验证。服务器响应为:5.5.1需要身份验证。了解更多信息(链接无效)

2 个答案:

答案 0 :(得分:1)

解决了! 我从来没有猜到过。 谷歌没有让我使用我的帐户,因为它被黑了。当我编写代码时,它显然被黑了......

答案 1 :(得分:0)

仅供参考,更安全的版本将是

    Using mail As MailMessage = New MailMessage
        mail.Subject = "test email"
        mail.To.Add("*****")
        mail.From = New MailAddress("*****") '
        mail.Body = "This is an email!"
        Using smtp As New SmtpClient("smtp.gmail.com")
            smtp.EnableSsl = True
            smtp.Credentials = New System.Net.NetworkCredential("*****", "*****")
            smtp.Port = 587
            smtp.Send(mail)
        End Using
    End Using
    MsgBox("Sent Successfully")

这将确保清除mailsmtp个对象,无论是否发生异常。