[英]Sending email through C# using gmail
我正在尝试通过smtp.gmail.com在C#应用程序中发送电子邮件。 我的代码在上周之前运行良好,突然我收到一条错误消息。 我在Gmail帐户中允许安全性较低的应用程序,启用了IMAP,没有任何更改。
第一次验证正常,我得到“端口打开”。
这是代码:
using (TcpClient tcpClient = new TcpClient())
{
try
{
tcpClient.Connect("smtp.gmail.com", 587);
MessageBox.Show("Port open");
}
catch (Exception)
{
MessageBox.Show("Port closed");
}
}
SmtpClient smtp = new SmtpClient
{
Host = "smtp.gmail.com",
Port = 587,
EnableSsl = true,
UseDefaultCredentials = false,
DeliveryMethod = SmtpDeliveryMethod.Network,
Credentials = new System.Net.NetworkCredential("myaddress@gmail.com", "mypassword")
};
using (var message = new MailMessage("myaddress@gmail.com", "toadress@gmail.com")
{
Subject = "Test",
Body = "Hi"
})
{
smtp.Send(message);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
我得到错误:
“服务不可用,正在关闭传输通道。
服务器响应为:无法连接到SMTP服务器2a00:1450:400c:c01 :: 6c(2a00:1450:400c:c01 :: 6c:587),连接错误10061“}
谢谢你的帮助
我认为您需要检查操作系统防火墙的权限。 似乎您无法收听587端口。
您可以发送netstat -a输出吗?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.