Ошибка отправки электронной почты с приватным почтовым доменом: код C # - PullRequest
0 голосов
/ 25 января 2012

В моем приложении 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 без каких-либо проблем.(с 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 с моим личным почтовым доменом.* Я дал правильный SMTP-хост и номер порта

У кого-нибудь есть идеи, почему это происходит так? ??Заранее спасибо.

Ответы [ 5 ]

0 голосов
/ 25 января 2012

Попробуйте установить эту конфигурацию в вашем app.confg:

<system.net>
    <mailSettings>
      <smtp from="abc@somedomain.com">
        <network host="somesmtpserver" port="25" userName="name" password="pass" defaultCredentials="true" />
      </smtp>
    </mailSettings>
 </system.net>
0 голосов
/ 25 января 2012

Ваш домен связан с приложениями Google?

Однажды я столкнулся с подобной проблемой. Один из моих поддоменов указывал на почту приложений Google (бесплатная версия / версия для предприятий), и мне не удалось отправить почту с использованием PHP.1004 * Дайте мне знать.

0 голосов
/ 25 января 2012

Возможно, вы пытались использовать RepltToList?

     msg.ReplyToList.Add(replyTo);

У меня были некоторые проблемы с отправкой почты без этого.

0 голосов
/ 25 января 2012

Я бы подумал, что это проблема конфигурации частного почтового сервера.может быть, даже глупость, например, включить поддержку SMTP на стороне сервера.попробуйте заглянуть в настройки частного почтового сервера.

0 голосов
/ 25 января 2012

Ваш почтовый провайдер, вероятно, не разрешает ретрансляцию. Это означает, что вы можете отправлять электронную почту только с адреса, на который вы вошли с

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...