电子邮件发送失败,私人电子邮件域:C#代码

本文关键字:电子邮件 代码 失败 | 更新日期: 2023-09-27 18:21:34

在我的winforms应用程序中,我使用以下函数发送电子邮件。

    public void sendEmailWithHotmail(string emailFrom, string emailPwd, string emailTo, string smtpHost, int smtpPort, string msg)
    {
        MailMessage mail = new MailMessage();
        mail.From = new MailAddress(emailFrom, "Test EMail");
        mail.To.Add(emailTo);
        mail.Subject = "Hi";
        mail.Body = msg;
        mail.Priority = MailPriority.Normal;
        NetworkCredential mailAuthentication = new NetworkCredential(emailFrom, emailPwd);
        SmtpClient mailClient = new SmtpClient(smtpHost, smtpPort);
        mailClient.EnableSsl = true;
        mailClient.UseDefaultCredentials = false;
        mailClient.Credentials = mailAuthentication;
        mailClient.Timeout = 20000;
        mailClient.Send(mail);            
    }

这段代码可以很好地与gmail、Hotmail和yahoo配合使用,没有任何问题。(与雅虎:mailClient.EnableSsl = false;和gmail/hotmail:mailClient.EnableSsl = true;

Gmail   -> smtp port: smtp.gmail.com,   smtp Port: 587
Hotmail -> smtp port: smtp.live.com,   smtp Port: 25
Yahoo   -> smtp port: smtp.mail.yahoo.com,   smtp Port: 25

我遇到的问题是,它不断收到一个异常,说我的私人电子邮件域为Smtp Exception : Failure sending mail。。myemailId@privatedomain.com我已经给出了正确的smtp主机和端口号

有人知道为什么会发生这种事吗。。??谢谢你。

电子邮件发送失败,私人电子邮件域:C#代码

您的邮件提供商可能不允许中继。这意味着您只能从使用登录的地址发送电子邮件

您是否尝试过使用RepltToList?

     msg.ReplyToList.Add(replyTo);

如果没有这个,我在发送邮件时遇到了一些问题。

我认为这是私人邮件服务器的配置问题。甚至可能是一件愚蠢的事情,比如启用SMTP支持服务器端。请尝试查看私人邮件服务器配置。

您的域是否与谷歌应用程序链接?

我也曾经遇到过类似的问题。我的一个子域指向谷歌应用程序邮件(免费版/非企业版),我无法使用PHP发送邮件。

让我知道。

尝试在app.conf中设置此配置:

<system.net>
    <mailSettings>
      <smtp from="abc@somedomain.com">
        <network host="somesmtpserver" port="25" userName="name" password="pass" defaultCredentials="true" />
      </smtp>
    </mailSettings>
 </system.net>