SMTP 服务器需要安全连接 VB.NET [重复]

问题描述 投票:0回答:1
 Dim smtp As New SmtpClient
                    Dim mail As New MailMessage
                    smtp.Credentials = New Net.NetworkCredential("mail@gmail", "password")
                        mail.From = New MailAddress("[email protected]")
                        mail.To.Add(totxt.Text$)
                        mail.Body = bodytxt.Text
                        If Not ListBox1.Items.Count <= 0 Then
                            Dim d As Integer
                            Dim attach As New Attachment(ListBox1.Items(d))
                            mail.Attachments.Add(attach)
                        End If
                    mail.Subject = subjecttxt.Text
                    smtp.EnableSsl = True
                    smtp.Port = "587"
                    smtp.Host = "smtp.gmail.com"
                    smtp.Send(mail)
                    smtp.Dispose()
                    done.Text = "Mail sent"
                    PictureBox4.BackgroundImage = My.Resources.tickfnl
                    dtls.Visible = False

我正在尝试从我的 gmail 帐户发送电子邮件。但我收到错误“SMTP 服务器需要安全连接”。我什至在我的帐户设置中启用了不太安全的应用程序登录。密码和电子邮件地址是正确的。我尝试了另一封电子邮件,但同样的问题。有修复吗?

我尝试了重复链接中的所有解决方案,仍然是同样的问题

**如果我删除此行

smtl.enablessl=true

然后我收到这个错误

服务器响应为 5.7.0 **

vb.net email smtp
1个回答
1
投票

使用 EASendmail 修复了它:

 Panel6.Visible = True
        done.Text = "Sending..."
        ''''''''''''''''''''''''
        Dim oMail As New SmtpMail("TryIt")
        Dim oSmtp As New EASendMail.SmtpClient()
        oMail.From = fromtxt.Text
        oMail.To = New AddressCollection(totxt.Text)
        oMail.Subject = subjecttxt.Text
        If html.CheckAlign = True Then
            oMail.HtmlBody = bodytxt.Text
        Else
            oMail.TextBody = bodytxt.Text
        End If
        Dim oServer As New SmtpServer(MailConfig.host.Text)
        oServer.Port = MailConfig.port.Text
        oServer.ConnectType = SmtpConnectType.ConnectSSLAuto
        oServer.User = fromtxt.Text
        oServer.Password = MailConfig.password.Text
        Dim r As Integer
        If ListBox1.Items.Count <= 0 Then
        Else
            oMail.AddAttachment(ListBox1.Items(r))
        End If
        oSmtp.LogFileName = Application.StartupPath & "\maillog.log"
        Try
            oSmtp.SendMail(oServer, oMail)
            done.Text = "Mail sent !"
            PictureBox4.BackgroundImage = My.Resources.tickfnl
        Catch ex As Exception
            aa = MsgBox(ex.Message)
            done.Text = "Sending failed."
            PictureBox4.BackgroundImage = My.Resources.excll
        End Try
© www.soinside.com 2019 - 2024. All rights reserved.