Windows表单向其他电子邮件发送电子邮件(例如gmail,hotmail)

时间:2017-09-26 01:52:29

标签: c# winforms email smtp

MailMessage message = new MailMessage();
SmtpClient smtp = new SmtpClient();

message.From = new MailAddress("myname@mycompany.com.sg");
message.To.Add(new MailAddress("myname@hotmail.com"));
message.Subject = "In need of help";
message.Body = "Good morning" + txt_name;";
smtp.Port = 465;
smtp.Host = "mail.mycompany.com.sg";
smtp.EnableSsl = true;
smtp.UseDefaultCredentials = false;
smtp.Credentials = new NetworkCredential("myname@mycompany.com.sg", "xxxxxxxxx");
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
smtp.Send(message);
MessageBox.Show("email sent");

我有一个电子邮件代码,可以在向同一个域发送电子邮件但无法发送给其他电子邮件平台(如gmail和hotmail)时使用。我在Windows上收到此错误

  

"错误:发送邮件失败。"。

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

我想为您推荐替代EGS。要测试问题是否是您正在使用的SMTP服务器上的配置问题,请注册Azure帐户并在Azure帐户内注册SENDGRID帐户。该服务将为您分配用户名和密码以及将与您的上述SMTP代码一起使用的服务器信息。此测试将确认您的代码正常工作,因为它看起来正确。

一旦您确认它不是您的代码,您就有足够的信息来联系运行服务器来解决问题的IT人员,或者只是使用SendGrid,直到您的IT部门阻止它为止。

对于它的价值,你发出的问题肯定是配置问题,可能会阻止向这些域名发送电子邮件。这是一种常见做法,可以防止员工通过电子邮件向自己发送敏感文件(因为很多人,如果不是大多数人现在都使用gmail或hotmail作为个人电子邮件)。

相关问题