ارسال یک ایمیل به Gmail با استفاده از SMTP در #C
دوشنبه 20 مهر 1394در این مقاله می خواهیم در مورد ارسال یک ایمیل به Gmail با استفاده از سرورهای SMTP بدون نیاز به هاست و دامنه با استفاده از سرورهای خود google یک ایمیل ارسال کنیم.
قدم اول Visual خود را باز کرده و یک پروژه ی جدید با #C را می سازید.
اسم پروژه و مسیر ذخیره شده آن را می توانید به صورت تصویر بالا تغییر دهید.
قدم دوم:
یک فرم جدید ایجاد کنید و ابزار هایی که در تصویر زیر است داخل صفحه قرار دهید.
راست کلیک کرده و وارد قسمت کد پروژه خود شوید و Namespace های زیر را قرار دهید.
اگر پیدا نکردید می توانید روی Solution Explorer راست کلیک کرده و گزینه ی Add References را بزنید
و System.Net را انتخاب کنید و اضافه نمایید.
داخل رویداد دکمه ی ارسال ایمیل قطعه کد زیر را بنویسید:
try { MailMessage msg = new MailMessage(); msg.From = new MailAddress(""); msg.To.Add(textBox1.Text); msg.Subject = textBox3.Text; msg.Body = textBox2.Text; SmtpClient smt = new SmtpClient(); smt.Host = "smtp.gmail.com"; System.Net.NetworkCredential ntcd = new NetworkCredential(); ntcd.UserName = ""; ntcd.Password = ""; smt.Credentials = ntcd; smt.EnableSsl = true; smt.Port = 587; smt.Send(msg); MessageBox.Show("ایمیل با موفقیت ارسال شد"); } catch (Exception ex) { MessageBox.Show(ex.Message); }
کل کد در صفحه Code Behind به صورت زیر خواهد بود:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Net; using System.Net.Mail; namespace wingmailapplication { public partial class Form2 : Form { public Form2() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { try { MailMessage msg = new MailMessage(); msg.From = new MailAddress(""); msg.To.Add(textBox1.Text); msg.Subject = textBox3.Text; msg.Body = textBox2.Text; SmtpClient smt = new SmtpClient(); smt.Host = "smtp.gmail.com"; System.Net.NetworkCredential ntcd = new NetworkCredential(); ntcd.UserName = ""; ntcd.Password = ""; smt.Credentials = ntcd; smt.EnableSsl = true; smt.Port = 587; smt.Send(msg); MessageBox.Show("ایمیل با موفقیت ارسال شد"); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
خروجی به صورت زیر خواهد بود:
- C#.net
- 3k بازدید
- 2 تشکر