首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SmtpClient -操作已超时

SmtpClient -操作已超时
EN

Stack Overflow用户
提问于 2014-06-30 15:34:34
回答 4查看 25.1K关注 0票数 4

我正在尝试创建一个使用C#发送电子邮件的小应用程序,但我无法让它工作,即使使用端口587 (GMail) TLS或465 (GMail SSL)。我不确定是什么导致了我的问题,我应该编辑我的app.config文件吗?下面是我的代码:

代码语言:javascript
复制
try
{
  SmtpClient client = new SmtpClient("smtp.gmail.com", 465);
  client.EnableSsl = true;
  client.Timeout = 10000;
  client.DeliveryMethod = SmtpDeliveryMethod.Network;
  client.UseDefaultCredentials = false;
  client.Credentials = new NetworkCredential("myemailid", "mypwd");

  MailMessage msg = new MailMessage();
  msg.To.Add(txtTo.Text);
  msg.From = new MailAddress("myemailid");
  msg.Subject = txtSub.Text;
  msg.Body = txtMsg.Text;

  client.Send(msg);
  MessageBox.Show("sent");
}
catch (Exception ex) 
{
    MessageBox.Show(ex.Message);
}
EN

回答 4

Stack Overflow用户

发布于 2020-03-04 12:20:53

端口25和465导致了问题。将端口更改为587对我来说很管用。

代码语言:javascript
复制
Dim myCredential As System.Net.NetworkCredential
myCredential = New System.Net.NetworkCredential("emailid", "pwd")
smtp.Host = "server"
smtp.Port = 587
smtp.EnableSsl = True
smtp.UseDefaultCredentials = False
smtp.Credentials = myCredential
smtp.Send(mm)
票数 7
EN

Stack Overflow用户

发布于 2014-07-05 19:02:42

如果您收到超时异常,则意味着SmtpClient无法连接到SMTP服务器或在发送过程中的某个时刻丢失了连接。

这可能是由您一端的防火墙阻止到服务器的传出连接或阻止端口465上的传出连接造成的。

票数 3
EN

Stack Overflow用户

发布于 2019-12-10 20:10:03

我也遇到了同样的问题,以管理员的身份为我排序

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24485049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档