在VB中发送电子邮件时出现SSL错误

时间:2015-01-09 18:13:21

标签: vb.net

以下是我发送电子邮件的代码:

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Try
            Dim SmtpServer As New SmtpClient
            SmtpServer.EnableSsl = True
            Dim mail As New MailMessage
            SmtpServer.Credentials = New Net.NetworkCredential("Frrizzeh@gmail.com", "Password here")
            SmtpServer.Port = "587"
            SmtpServer.Host = "smtp.gmail.com"
            mail = New MailMessage
            mail.From = New MailAddress("Frrizzeh@gmail.com")
            mail.To.Add("Frrizzeh@gmail.com")
            mail.Subject = TextBox1.Text
            mail.Body = TextBox2.Text
            SmtpServer.Send(mail)

        Catch ex As Exception
            MsgBox(ex.Message)

        End Try

然而,当我运行程序时,它只返回此错误:

The SMTP server requires a secure connection or the client was not authenticated.

服务器服务器响应为:5.5.1需要身份验证。

我出错的任何想法?

3 个答案:

答案 0 :(得分:2)

尝试从https://www.google.com/settings/security/lesssecureapps启用安全性较低的密码,以便您可以从应用中登录。

另外,请尝试添加以下属性

SmtpServer.DeliveryMethod = SmtpDeliveryMethod.Network SmtpServer.UseDefaultCredentials = False

答案 1 :(得分:2)

您可能启用了两步验证,如果是,则需要生成应用专用密码供您使用。我已经回答了这个问题并在之前的另一个问题中提供了代码。见下面的链接......

Fail Sending Email Unable To Connect the Remote Server

答案 2 :(得分:1)

我遇到了这个问题并通过将我的gmail密码更改为带有上限,下限,符号,数字的更强密码来修复它。 很有趣,它从localhost运行良好,但从我的服务器失败。