2015-06-16 1 views
0

У меня есть этот код, используемый для отправки писем с GMX на почту walla.Отправка электронной почты с помощью C# .net SmtpClient не работает должным образом

MailMessage mail = new MailMessage("[email protected]", "[email protected]"); 
      SmtpClient client = new SmtpClient(); 
      client.Port = 25; 
      client.DeliveryMethod = SmtpDeliveryMethod.Network; 
      client.UseDefaultCredentials = false; 
      client.EnableSsl = true; 
      client.Host = "mail.gmx.com"; 
      mail.Subject = "A new account was registered: "; 
      mail.Body = string.Format("Username: {0}, Password: {1}", textBox1.Text, textBox2.Text); 
      try 
      { 
       client.Send(mail); 

      } 
      catch (SmtpException ex) 
      { 
       System.Windows.Forms.MessageBox.Show(ex.ToString()); 
      } 

Всякий раз, когда я пытаюсь работает этот код, я получаю исключение, что мне нужно защищенное соединение, но я включен SSL. Что я не сделал правильно? Благодаря!

+0

Порт 25 не является портом SSL, вам нужно выяснить, какой порт GMail использует для SSL и установить его на этом. –

+0

Я нашел на этом сайте (http://www.smtp-pop3.com/gmx-settings.html), что порты могут быть 587 или 465, но ни один из них не работает. Он просто говорит, что мне нужно подключиться защищенным способом (почему он продолжает говорить мне? Я активировал SSL!) –

ответ

0

Как уже упоминалось на GMX странице вы должны использовать порт 587 при использовании SSL/TLS соединение: https://help.gmx.com/en/applications/pop3.html

SmtpClient client = new SmtpClient(); 
    client.Port = 587; 

Я думаю, вы должны также установить учетные данные для проверки подлинности для клиента SMTP, используя учетные данные для вашего mail:

client.Credentials = new NetworkCredential("username", "password"); 
+0

Он по-прежнему не работает ... Он просто продолжает говорить мне об этом: для SMTP-сервера требуется защищенное соединение, или пользователь не будет аутентифицирован. Ответ сервера: Требуется проверка подлинности –

+0

Пожалуйста, установите учетные данные, как указано в моем редактировании. Это должно быть имя пользователя и пароль, которые вы используете для входа в свою учетную запись электронной почты, которая используется в качестве отправителя. Большинство SMTP-серверов требуют аутентификации, чтобы избежать спама и непреднамеренных клиентов. –

+0

К сожалению, все еще не работает ... –

Смежные вопросы