2015-01-01 5 views
-1

C#에서 만든 전자 메일 보낸 응용 프로그램을 사용하여 메시지를 보낼 때 Net.Mail.SmtpException이 출력됩니다.System.Net.Mail.SmtpException - 전자 메일 보낸 사람

오류 :System.Net.Mail.Smtp.Exception : SMTP 서버에 보안 연결이 필요하거나 클라이언트가 인증되지 않았습니다. 서버 응답은 : 5.5.1 인증 필요. System.Net.Mail.Smt.S.Transport에서 System.Net.MailCommand.CheckResponse (SmtpStatusCodestatusCde, Stringresponse) 에서 System.Net.Mail.MailCommand.Send (SmtpConnection conn, Byte [] 명령, MailAddressfrom, 부울 allowUnicode)에 대해 자세히 알아보십시오. System.Net.Mail.SmtpClient.Send (MailMessage message) at My_first_project.Form1.button2_Click (Object sender, EventArgs e) in c : \ .SendMail (MailAddress 보낸 사람, MailAddressCollection받는 사람, String deliveryNotify, 부울 allowUnicode, SmtpFailedRecipientException & 예외) 사용자 \ HUSSAM 내 첫 번째 프로젝트 \ 프로젝트 \ C# \ 프로젝트 \ 비주얼 스튜디오 2012 \ 문서 \ \ 내 첫 번째 프로젝트 \ Form1.cs를 : 라인 여기

(80)는 CODE :

private void button2_Click(object sender, EventArgs e){ 

     try 
     { 
      if (!textBox4.Text.Contains("@gmail.com")) 
      { 

       MessageBox.Show("You need to provide @gmail email :)"); 
       return; 

      } 

      button2.Enabled = false; 
      MailMessage message = new MailMessage(); 
      message.From = new MailAddress(textBox4.Text); 
      message.Subject = textBox2.Text; 
      message.Body = textBox3.Text; 

      foreach (string s in textBox1.Text.Split(';')) 
       message.To.Add(s); 

      SmtpClient client = new SmtpClient(); 
      client.UseDefaultCredentials = false; 
      client.Credentials = new NetworkCredential(textBox4.Text, textBox5.Text); 
      client.Host = "smtp.gmail.com"; 
      client.Port = 587; 
      client.DeliveryMethod = SmtpDeliveryMethod.Network; 
      client.EnableSsl = true; 
      client.Send(message); 

     }//end try 
     catch 
     { 

      MessageBox.Show("There was error sending the message. Make sure you typed in\r\nyour credentials correctly and that you have an internet connection.", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); 

     } 
     finally { button2.Enabled = true; } 
    }//end button function 
입니다
+1

실제 오류 메시지가 무엇입니까? – siride

+0

내가 위에서 언급했다 :) –

+0

그건 실제 오류 메시지가 아니야. 예외 자체에 오류 메시지가 있습니다. – siride

답변

0

는 그것을 시도 :

 var mail = new MailMessage(); 
    var smtp = new SmtpClient("smtp.gmail.com"); 
    mail.From = new MailAddress("email_from"); 
    mail.To.Add("email_to"); 
    mail.Subject = "subject"; 
    mail.Body = "body"; 
    smtp.Port = 587; 
    smtp.Credentials = new NetworkCredential("user", "password"); 
    smtp.EnableSsl = true; 


    smtp.Send(mail); 
+0

같은 오류 받기 –

+0

catch catch (예외 e) - 전체 예외 설명 제공 – Johnny

+0

예외 편집! –

관련 문제