发送电子邮件失败无法连接远程服务器

时间:2014-04-29 09:13:32

标签: asp.net vb.net sockets email smtp

发送电子邮件时遇到错误。这是错误

Error Email Sending Failure

这个例外的实际错误是什么,因为我在这里有新手,顺便说一下这里是我的代码行:

 Try
                Dim SmtpServer As New SmtpClient()
                Dim mail As New MailMessage()

                SmtpServer.Credentials = New  _
                Net.NetworkCredential("test@gmail.com", "passwordexample")
                SmtpServer.EnableSsl = True
                SmtpServer.Port = 587
                SmtpServer.Host = "smtp.gmail.com"

                mail = New MailMessage()
                mail.From = New MailAddress("test@gmail.com")
                mail.To.Add("examplemail@gmail.com")
                mail.Subject = "Change Request Submitted"
                mail.Body = "Dear User, " & Environment.NewLine & Environment.NewLine & Environment.NewLine & Environment.NewLine & "One Notification have been submitted," & Environment.NewLine & "Please check the change request on the intranet application"

//ad this line the error SmtpServer.Send(mail)
                SmtpServer.EnableSsl = True
                MsgBox("Notification emailed successfully")
            Catch ex As Exception
                MsgBox(ex.ToString)
            End Try

2 个答案:

答案 0 :(得分:1)

请看这个答案......

Sending Email from Visual Basic

如果您仍然无法发送电子邮件....

您是否在Gmail中启用了POP或IMAP? 登录Gmail网络界面。打开转发和POP / IMAP'您的“设置”标签上的标签页面,并配置IMAP或POP。在Gmail中启用此功能后,请务必点击“保存更改”。因此Gmail可以与您的邮件客户端进行通信。

如果您有2步验证..

获取特定于应用程序的密码 当您在移动设备或电子邮件软件上设置Google Mail时,Google会自动生成您只需要一次的密码。您可以轻松为要使用的每个设备或电子邮件软件生成密码。

第1步: 在两步验证屏幕的底部,在“特定于应用程序的密码”旁边,单击“管理应用程序特定的密码”。 “Google帐户”的授权访问权限将会打开。

第2步: 在“授权访问您的Google帐户”屏幕的“名称”字段中,键入名称以帮助您记住用于访问帐户的应用程序,然后单击“生成密码”。然后,您将看到用于配置移动设备或电子邮件软件的密码。保持此屏幕打开,直到您准备输入密码(参见下面的第4部分)。使用设备名称创建的密码将显示在底部。使用完密码后,单击“完成”。

第3步: 要为其他设备或电子邮件软件设置密码,只需在“名称”字段中键入其名称,然后单击“生成密码”。您将收到另一个密码。

在此处查看更多内容......

http://www.oit.umass.edu/support/google-apps/configure-google-mail-email-software-mobile-devices

答案 1 :(得分:-2)

  Dim SmtpServer As New SmtpClient()
    SmtpServer.Credentials = New Net.NetworkCredential("EMAIL FROM@gmail.com", "YOUR PASSWORD")
    SmtpServer.Port = 25
    SmtpServer.Host = "smtp.gmail.com"
    SmtpServer.EnableSsl = True
    Dim omail As New MailMessage()


    omail.From = New MailAddress("FROM EMAIL @gmail.com", "Message", System.Text.Encoding.UTF8)

    omail.Subject = "test subject"
    omail.To.Add("test@gmail.com")

    SmtpServer.SendAsync(omail, Nothing)

Catch ex As Exception
    MsgBox(ex.ToString)
End Try

如果那不起作用试试 SmtpServer.Port = 587