我编写了以下代码,以便从VB.net Windows窗体发送电子邮件。 这是我的代码
Try
Dim message As System.Net.Mail.MailMessage
Dim smtp As New System.Net.Mail.SmtpClient("smtp.gmail.com")
Dim fromMailAddress As System.Net.Mail.MailAddress
Dim toMailAddress As System.Net.Mail.MailAddress
fromMailAddress = New System.Net.Mail.MailAddress("fromEmailID@live.com")
toMailAddress = New System.Net.Mail.MailAddress("toEMailID@gmail.com")
message = New System.Net.Mail.MailMessage()
message.From = toMailAddress
message.To.Add(fromMailAddress)
message.Subject = "TestFromVB"
message.Body = "Test Message"
smtp.EnableSsl = True
smtp.UseDefaultCredentials = False
smtp.Credentials = New System.Net.NetworkCredential("emailid@gmail.com", "password")
smtp.DeliveryMethod = Net.Mail.SmtpDeliveryMethod.Network
smtp.Send(message)
MessageBox.Show("sent...")
Catch ex As Exception
MessageBox.Show("error" + ex.Message + "\n" + ex.InnerException.ToString())
End Try
每当我点击按钮发送时,都应该发送电子邮件到指定的地址。这段代码提供了一些错误,说无法连接到远程计算机....
以下是异常的屏幕截图
任何人都可以帮我解决这个问题。或者如果您有任何工作样品,请提出建议。
答案 0 :(得分:4)
我认为您需要使用其他端口号587
或465
根据this GMail文件。
接收邮件(POP3)服务器 - 需要SSL:
pop.gmail.com
- 使用SSL:
Yes
- 端口:
995
发送邮件(SMTP)服务器 - 需要TLS或SSL:
smtp.gmail.com
- 使用身份验证:
Yes
- TLS / STARTTLS的端口:
587
- SSL端口:
465
- 帐户名称:
your full email address (including @gmail.com or @your_domain.com)
- 电子邮件地址:
your email address (username@gmail.com or username@your_domain.com)
- 密码:
your Gmail password
答案 1 :(得分:0)
GMail使用端口587作为smtp服务器。请参阅此代码示例:
http://www.fryan0911.com/2009/10/how-to-send-email-via-gmail-smtp-in.html
答案 2 :(得分:0)
对于其他任何偶然发现此问题的人,除了其他答案所指出的端口需要正确之外,很多时候Google不会在不更改您的Google帐户设置的情况下从Vb.net程序进行身份验证以降低安全性连接。 link to google settings