Click here to Skip to main content
15,881,281 members
Articles / Desktop Programming / System
Alternative
Tip/Trick

Using Gmail Account to Send Emails With Attachment

Rate me:
Please Sign up or sign in to vote.
4.71/5 (7 votes)
18 Apr 2011CPOL 14.2K   3   2
Sending mail with attachmentspublic partial class Form1 : Form { public Form1() { InitializeComponent(); } public class MailClass : List { public void CreateMailAddresses(string sender, string reciever, out...
Sending mail with attachments

C#
public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        public class MailClass : List<string>
        {
            public void CreateMailAddresses(string sender, string reciever, out MailAddress mailfrom, out MailAddress mailto)
            {
                MailAddress Mailfrom = new MailAddress(sender);
                MailAddress Mailto = new MailAddress(reciever);
                mailfrom = Mailfrom;
                mailto = Mailto;
            }

            public MailMessage MailMessage(MailAddress mailfrom, MailAddress mailto, string subject, string body)
            {
                MailMessage newmsg = new MailMessage(mailfrom, mailto);

                newmsg.Subject = subject;
                newmsg.Body = body;
                newmsg.IsBodyHtml = true;
                return newmsg;
            }

            public SmtpClient SmtpClient(string sender, string password, string host, bool SslEnabled, int port)
            {
                SmtpClient smtp = new SmtpClient(host, port);
                smtp.UseDefaultCredentials = false;
                smtp.Credentials = new NetworkCredential(sender, password);
                smtp.EnableSsl = SslEnabled;
                return smtp;
            }
        }
        MailClass Mail = new MailClass();
        private void button1_Click(object sender, EventArgs e)
        {
            
            MailAddress mailfrom;
            MailAddress mailto;
            Mail.CreateMailAddresses("sender@gmail.com", "reciever@ymail.com", out mailfrom, out mailto);
            MailMessage newmsg = Mail.MailMessage(mailfrom, mailto, "Subject of Email", "Body(message) of email");
            Byte google;
            for (google = 0; google < Mail.Count; google++)
            {
                newmsg.Attachments.Add(new Attachment(Mail[google]));
            }
            SmtpClient smtp = Mail.SmtpClient("sender@gmail.com", "password", "smtp.gmail.com", true, 587);
            smtp.Send(newmsg);
        }

        private void button2_Click(object sender, EventArgs e)
        {
            // add attachments
            OpenFileDialog ofd = new OpenFileDialog();
            if (ofd.ShowDialog() == DialogResult.Cancel)
                return;
            Mail.Add(ofd.FileName);
        }
    }

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


Written By
United States United States
I do not claim to be wrong! I just rarely ever write.

Comments and Discussions

 
GeneralReason for my vote of 3 CreateMailAddresses function is not ... Pin
Philippe Mori14-May-11 10:27
Philippe Mori14-May-11 10:27 
GeneralReason for my vote of 5 wow attachments to Pin
cSNewb22-Apr-11 6:03
cSNewb22-Apr-11 6:03 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.