Gửi mail (thư) trong C# – với tài khoản Gmail


using System.Net.Mail;
using System.Net;
private void button1_Click(object sender, EventArgs e)
     {
       string Sendto = "ngotuongdan01@gmail.com"; //Email Address to reciever
      // tai khoan này các bạn sử đừng sử dụng để gửi tùm lum dùm tui nhe
       string UserName = "ngotuongdan04"; //Ur Gmail address
       string PassWord = "ngotuongdan"; //Gmail password
       NetworkCredential loginInfo = new NetworkCredential(UserName, PassWord);
       MailMessage msg = new MailMessage();
       msg.From = new MailAddress(UserName);
       msg.To.Add(new MailAddress(to.ToString()));
       msg.Subject = "Testing Mail";
       msg.Body = textBox1.Text.ToString();
       msg.IsBodyHtml = true;
       SmtpClient client = new SmtpClient("smtp.gmail.com");
       client.EnableSsl = true;
       client.UseDefaultCredentials = false;
       client.Credentials = loginInfo;
       client.Send(msg);
       MessageBox.Show("mail sent");
     }

Chúc các bạn thành công

Một suy nghĩ 20 thoughts on “Gửi mail (thư) trong C# – với tài khoản Gmail

  1. Em chào thầy, cho em hỏi là : em thay đổi

    string UserName = “ngotuongdan04”; //Ur Gmail address
    string PassWord = “ngotuongdan”; //Gmail password

    sang tài khoản của em thì chương trình báo lỗi vậy, e cũng dùng gmail nhưng gmail của thầy gửi đc mà gmail của e ko gửi đc ạ ! @@

    Thích

      • Thầy ơi, em xử lý được rồi ạ, Thầy cho em hỏi, bây giờ em muốn thêm chức năng thống kê số người đã reply lại mail của mình gửi đi thì có phải dùng thư viện hỗ trợ gì k ạ? Ví dụ em gửi 1 mail cho 5 người, nếu có 4 người đã trả lời thì app thống kê đã có 4 ng trả lời và link trực tiếp tới mail họ đã trả lời? Em cảm ơn!

        Thích

  2. Nhìn qua code thì có vẻ ổn nhưng em nên in ngoại lệ chi tiết ra để biết bị lỗi gì, vì khi gởi mail có nhiều nguyên nhấn lỗi lắm em à.

    1. Không phân giải được tên miềm sptm.gmail.com
    2. Bị chặn do gởi nhiều mail từ một địa chỉ mail
    …..

    em thử nhe, có gì liên hệ lại với tôi
    Tham khao file nay nhe

    Thích

      • Thầy xem giúp em với. Em có tạo 1 form đăng nhập bằng gmail, khi click nút login thì n chuyển vào chế dộ gửi mail. form gồm có các textBox “txtfrom”, “txtTo”,”txtsubject”, “txtBody”.
        Em có 2 biến tb=txtAcc(tài khoản khi đăng nhập ở form login), tb1=txtPass(pass ở form login). em viết code ở form gửi mail như thế này sao n cứ báolỗi k gửi đc mail ạ.
        private void btSend_Click(object sender, EventArgs e)
        try {
        SmtpClient client = new SmtpClient(“smtp.gmail.com”, 587);
        client.Credentials = new NetworkCredential(login.tb.Text, login.tb1.Text);
        MailMessage msg = new MailMessage();
        msg.To.Add(new MailAddress(txtTo.Text));
        msg.From = new MailAddress(txtFrom.Text);
        msg.Subject = txtSubject.Text;
        msg.Body = txtBody.Text;
        client.EnableSsl = true;
        client.Send(msg);
        MessageBox.Show(“Gửi thành công”);
        }
        catch{
        MessageBox.Show(“K THÀNH CÔNG”);
        }
        mONG THẦY GIÚP EM VỚI Ạ.

        Thích

  3. hiện tại theo tôi biết thì gmail cho phép chứng thực gởi từ xa còn yahoo thi đã khóa tính này này cho bản miễn phí.
    Còn code này tôi sử dung server mail của gmail để gởi nên gmail gởi được đến đâu thì code code trên sẽ gởi đến đó.

    Tôi nghĩ bạn nên xem lại một chút về STMP để hiểu rõ thư điện tử nhe vì có vẻ bạn đang hiểu sai rồi.

    Thích

  4. Em đọc thông tin về địa chỉ mail trong csdl lên rồi chỉnh code lại một tí là được rồi

    ……………………………….
    msg.To.Add(new MailAddress(“Địa chỉ lấy từ CSDL lên”));
    msg.Subject = “Testing Mail”;
    msg.Body = “Nội dung muốn gởi”;
    ………………………………………

    Vậy là xong rồi.

    Thân.

    Thích

  5. Em muốn hỏi thầy như sau: em viết một chương trình bằng c# với mục đính là: có 1 địa chỉ Email (vd: kaka@yahoo.com.vn), đã được lưu trong database, em muốn gửi 1 bức thư với một nội dung nào đó đến địa chỉ đó thì phải làm như thế nào ạ.

    Thích

  6. Em có vấn đề này muốn hỏi thầy, e muốn sử dụng keys để ràng buộc thời gian sử dụng cho phần mềm. Lầu đầu khi cai đặt phần mềm xong và chạy lên e sẽ cho phần mềm đó tự động xuất ra Keys rồi gửi vào mail của em. Nhưng khi có cái keys rồi thi em k bít lưu lại bằng cách nào để lần thứ hai chạy không bắt nhập keys nữa, em có thử lưu keys đó lại thành một file của hệ thống, rồi sao đó đọc file đó nếu như có tồn tại thi không bắt nhập keys lại, nhưng cách này em thấy không an toàn là vì ví dụ như khi nguoi ta cài phần mếm thêm o máy khác mà người ta bít chỗ lưu cái file của minh o dau thì người ta tạo cái file giống hệt như z thì sẽ chạy được.

    Thầy giúp em hướng giải quyết nhe,
    em cám ơn thầy

    Thích

Phản hồi