C# Winforms 发送邮件

来源:互联网 发布:sqlserver 创建实例 编辑:程序博客网 时间:2024/05/24 01:51

 

C#Winforms 发送邮件

 

 

1. 先添加两个命名空间:

using System.Net;

using System.Net.Mail;

发送邮件的发信人邮箱必须使用smtp协议的邮箱,例如163、126、sina 等邮箱(163、126新注册的邮箱不可用,而sina邮箱里可以自己设置是否启用smtp协议)

 

2. 完整代码

using System;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

using System.Data;

using System.Drawing;

using System.Text;

usingSystem.Windows.Forms;

using System.Net;

usingSystem.Net.Mail;

 

namespace Mail

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

 

        private void button1_Click(objectsender, EventArgs e)

        {

            //发送

            SmtpClient client = newSmtpClient("smtp.sina.com");   //设置smtp邮件协议

           client.UseDefaultCredentials = false; 

           client.DeliveryMethod = SmtpDeliveryMethod.Network;       //通过网络发送到Smtp服务器

            client.Credentials= new NetworkCredential("ada_desktop@sina.com", "*****"); //通过用户名和密码认证

            MailMessage mmsg =new MailMessage(new MailAddress("ada_desktop@sina.com"), newMailAddress("*******@189.cn")); //发件人和收件人的邮箱地址  

           

            mmsg.Subject = "邮件主题";     //邮件主题

            mmsg.SubjectEncoding =Encoding.UTF8;   //主题编码

            mmsg.Body = "邮件正文";        //邮件正文

            mmsg.BodyEncoding = Encoding.UTF8;      //正文编码

            mmsg.IsBodyHtml = true;   //设置为HTML格式          

            mmsg.Priority = MailPriority.High;   //优先级

            try

            {

                client.Send(mmsg);

               MessageBox.Show("邮件已发成功");

            }

            catch (Exception ex)

            {

                MessageBox.Show(ex.Message);

            }

        }

    }

}

 

3. 注意:

新浪邮箱

client.Credentials的用户名要用全称 ada_desktop@sina.com

163邮箱

client.Credentials的用户名不需要全称即可

client.Credentials = new NetworkCredential("adadesktopassistan", "密码");

原创粉丝点击