Từ 1 tới 7 trên tổng số 7 kết quả

Đề tài: Lỗi The SMTP server requires a secure connection or the client was not authenticated trong ứng dụng sendmail C#?

  1. #1
    Ngày gia nhập
    12 2008
    Bài viết
    8

    Question Lỗi The SMTP server requires a secure connection or the client was not authenticated trong ứng dụng sendmail C#?

    Chào các bác, e mới học code C# viết ứng dụng send mail.
    Code :
    private void button1_Click(object sender, EventArgs e)
    {


    try
    {
    SmtpClient smtpServer = new SmtpClient();
    MailMessage mail = new MailMessage();
    smtpServer.Credentials = new System.Net.NetworkCredential("username@gmail.com", "xxxxxx");
    smtpServer.Port = 25;
    smtpServer.Host = "smtp.gmail.com";
    mail = new MailMessage();
    mail.From = new MailAddress("phihungit@gmail.com");
    mail.To.Add("phihungit@gmail.com");
    mail.Subject = "Test mail";
    mail.Body = "nhan duoc khong bo";
    smtpServer.Send(mail);
    MessageBox.Show("Mail send");
    }
    catch (Exception loi)
    {
    MessageBox.Show(loi.ToString());
    }

    }
    chạy nó báo lỗi này "The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first. 4sm34527167pbk.5"
    Bác nào biết giúp em với.
    Đã được chỉnh sửa lần cuối bởi phihungit : 23-09-2011 lúc 12:26 PM.
    Chớ hoãn lại ngày mai
    Hãy làm những việc ta có thể làm trong ngày hôm nay

  2. #2
    Ngày gia nhập
    02 2011
    Nơi ở
    Vô Gia Cư
    Bài viết
    269

    Bạn thử đổi port 25 thành 587 xem đc không! Đây là lớp smtp mà mình dùng trong project của mình bạn có thể tham khảo.
    Code:
        /// Lớp dùng để tạo kết nối tới GmailServer để gửi mail đi
        ///
        class SMTPClientCmail
        {
            /// Những thuộc tính trong lớp
            ///
            #region
            // Danh sách người nhận
            //
            private string[] _DanhSachNguoiNhan;
            public string[] DanhSachNguoiNhan
            {
                get { return _DanhSachNguoiNhan; }
                set { _DanhSachNguoiNhan = value; }
            }
    
            // Danh sách Cc
            // 
            private string[] _DanhSachCc;
            public string[] DanhSachCc
            {
                get { return _DanhSachCc; }
                set { _DanhSachCc = value; }
            }
    
            // Danh sách Bcc
            //
            private string[] _DanhSachBcc;
            public string[] DanhSachBcc
            {
                get { return _DanhSachBcc; }
                set { _DanhSachBcc = value; }
            }
    
            // Danh sách file đính kèm
            //
            private Attachment[] _DanhSachAttment;
            public Attachment[] DanhSachAttment
            {
                get { return _DanhSachAttment; }
                set { _DanhSachAttment = value; }
            }
    
            // Tiêu đề mail cần gửi
            //
            private string _Subject;
            public string Subject
            {
                get { return _Subject; }
                set { _Subject = value; }
            }
    
            // Nội dung mail cần gửi
            //
            private string _Contents;
            public string Contents
            {
                get { return _Contents; }
                set { _Contents = value; }
            }
            #endregion
    
            /// Phương thức của lớp
            ///
            #region
            // Xử lý danh sách người nhận
            //
            public void setDanhSachNguoiNhan(string SendTo)
            {
                if (SendTo == "")
                {
                    MessageBox.Show("Bạn Chưa Nhập Địa Chỉ Một Người Nhận Nào", "Thông Báo");
                    return;
                }
                DanhSachNguoiNhan = SendTo.Split(',');
            }
    
            // Xử lý danh sách Cc
            //
            public void setDanhSachCc(string Cc)
            {
                if (Cc != "")
                {
                    DanhSachCc = Cc.Split(',');
                }
            }
    
            // Xử lý danh sách Bcc
            //
            public void setDanhSachBcc(string Bcc)
            {
                if (Bcc != "")
                {
                    DanhSachBcc = Bcc.Split(',');
                }
            }
    
            // Xử lý danh sách file đính kèm
            //
            public void setDanhSachAttachment(string[] AttachmentPath)
            {
                DanhSachAttment = new Attachment[AttachmentPath.Length];
                for (int i = 0; i < AttachmentPath.Length; i++)
                    DanhSachAttment[i] = new Attachment(AttachmentPath[i]);
            }
    
            // Thực hiện việc gửi mail dùng SMTP
            //
            public bool GuiMail(AccGmail user)
            {
                #region Tạo kết nối tới Gmailserver
                SmtpClient SmtpServer = new SmtpClient();
                SmtpServer.Credentials = new System.Net.NetworkCredential(user.TenTaiKhoan, user.MatKhau);
                SmtpServer.Port = 587;
                SmtpServer.Host = "smtp.gmail.com";
                SmtpServer.EnableSsl = true;
                #endregion
                MailMessage smail = new MailMessage();
                try
                {
                    #region Tạo một bức thư điện tử
                    smail.From = new MailAddress(user.TenTaiKhoan, user.TenHienThi, System.Text.Encoding.UTF8);
                    Byte i;
                    for (i = 0; i < DanhSachNguoiNhan.Length; i++)
                        smail.To.Add(DanhSachNguoiNhan[i]);
                    if(DanhSachCc != null)
                    {
                        for (i = 0; i < DanhSachCc.Length; i++)
                            smail.CC.Add(DanhSachCc[i]);
                    }
                    if (DanhSachBcc != null)
                    {
                        for (i = 0; i < DanhSachBcc.Length; i++)
                            smail.Bcc.Add(DanhSachBcc[i]);
                    }
                    if (DanhSachAttment != null)
                    {
                        for (i = 0; i < DanhSachAttment.Length; i++)// danh sách file đính kèm (nếu có)
                            smail.Attachments.Add(DanhSachAttment[i]);
                    }                                            
                    smail.Subject = Subject;
                    smail.Body = Contents;
                    smail.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
                    #endregion
                    SmtpServer.Send(smail);
                    SmtpServer.Dispose();
                    return true;
                }
                catch
                { return false; }
            }
            #endregion
        }

  3. #3
    Ngày gia nhập
    12 2008
    Bài viết
    8

    Cám ơn bạn nhé, mình đổi port có vẻ như là được rồi nhưng khi gửi nó báo lỗi "Failure sending mail." không hiểu có thiếu chỗ nào nữa không, giúp giùm mình luôn nha.
    Chớ hoãn lại ngày mai
    Hãy làm những việc ta có thể làm trong ngày hôm nay

  4. #4
    Ngày gia nhập
    02 2011
    Nơi ở
    Vô Gia Cư
    Bài viết
    269

    Trích dẫn Nguyên bản được gửi bởi phihungit Xem bài viết
    Cám ơn bạn nhé, mình đổi port có vẻ như là được rồi nhưng khi gửi nó báo lỗi "Failure sending mail." không hiểu có thiếu chỗ nào nữa không, giúp giùm mình luôn nha.
    Hình như là tại bạn gửi cho chính mình hay sao ấy! thử đổi địa chỉ email khác xem!

  5. #5
    Ngày gia nhập
    12 2008
    Bài viết
    8

    Mình đã đổi rồi địa chỉ mail rồi bạn ơi cũng không được luôn vẫn báo lỗi ,
    Attached Thumbnails Attached Thumbnails Untitled.png  
    Đã được chỉnh sửa lần cuối bởi phihungit : 23-09-2011 lúc 05:27 PM.
    Chớ hoãn lại ngày mai
    Hãy làm những việc ta có thể làm trong ngày hôm nay

  6. #6
    Ngày gia nhập
    08 2011
    Nơi ở
    Yên Bái- Hà Nội
    Bài viết
    961

    Mặc định Lỗi The SMTP server requires a secure connection or the client was not authenticated trong ứng dụng sendmail C#?

    Visual C# Code:
    1.  SmtpClient client = new SmtpClient();
    2.                 client.DeliveryMethod = SmtpDeliveryMethod.Network;
    3.                 client.EnableSsl = true;
    4.                 client.Host = "smtp.gmail.com";
    5.                 client.Port = 587;
    6.                 // setup Smtp authentication
    7.                 System.Net.NetworkCredential credentials =
    8.                     new System.Net.NetworkCredential("mrfour.calendar@gmail.com", "xxxxxxxxx");
    9.                 client.UseDefaultCredentials = false;
    10.                 client.Credentials = credentials;
    11.                 MailMessage msg = new MailMessage();
    12.                 msg.From = new MailAddress("mrfour.calendar@gmail.com");
    13.                 msg.To.Add(new MailAddress(strEmail));
    14.                 msg.Subject = "Information Your Event";
    15.                 msg.IsBodyHtml = true;
    16.                 string mBody = string.Format(@"<html>
    17.                                           <head>Reminder</head>
    18.                                           <body>
    19.                                           <h1>Your Event </h1>"
    20.                                              viet noi dung tet ga di.hehe
    21.  
    22.  
    23.                                                + "</body>");
    24.                 msg.Body = mBody;
    25.                 client.Send(msg);
    thu xem được không bạn? t chạy kiểu đó bon lắm.hi
    Skype: mrfour.it - Yahoo:mrfour_it
    Gmail: mrfour.it@gmail.com
    Bạn muốn học lập trình? Bạn chưa có kiến thức cơ bản? Bạn muốn học từ cơ bản tới nâng cao?... Bạn muốn có source code để tham khảo? Muốn có người hỗ trợ khi học?....http://www.laptrinh123.com sẽ giúp bạn những điều đó!

  7. #7
    Ngày gia nhập
    12 2008
    Bài viết
    8

    Cám ơn các bạn nhé, mình làm được rồi do mạng công ty minh chặn cái port 587 hay sao ấy tối về mình mò lại chạy ngon rồi mừng quá hi hi. Cám ơn nhiều nhé
    Chớ hoãn lại ngày mai
    Hãy làm những việc ta có thể làm trong ngày hôm nay

Các đề tài tương tự

  1. Trả lời: 6
    Bài viết cuối: 28-06-2014, 12:02 PM
  2. Trả lời: 0
    Bài viết cuối: 31-08-2013, 01:18 PM
  3. Socket Không thể xóa Client ngắt kết nối với Server trong danh sách Client đang kết nối
    Gửi bởi thanhtanh trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 1
    Bài viết cuối: 20-10-2012, 04:37 PM
  4. Có cần cài SQlServer trên máy Client, trong ứng dụng Server Client
    Gửi bởi billsang trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 4
    Bài viết cuối: 28-10-2011, 01:09 PM
  5. Lỗi: hàm sendmail qua smtp, sử dụng google email
    Gửi bởi thansautk trong diễn đàn Thắc mắc lập trình C#
    Trả lời: 5
    Bài viết cuối: 31-08-2010, 10:09 PM

Tags của đề tài này

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn