C# 发送邮件功能

前言:
SMTP(Simple Mail Transport Protocol)简单邮件传输协议。在.NET Frameword类库中提供SmtpClient类(System.Net.Mail),她提供了一个轻型方法来发送SMTP电子邮件信息。SmtpClient类中的Bcc属性是用来指定此电子邮件抄送的收件人的集合,这就意味着可以为每个邮件制定多个收件地址。Attachmenty属性也是一个集合,可以使用它为邮件添加多个附件。 发送邮件中用的其他类主要还有

1.Attachment类,表示文件附件,它允许将文本、流、文件附加到电子邮件中。

2.MailAddress类,表示邮件地址。

3.MailMessage类,表示电子邮件

SmtpClient mailClient = new SmtpClient("smtp.qq.com");
//Credentials登陆SMTP服务器的身份验证. (这里的用户名是完整的邮箱账号,密码就是SMTP的密码)
mailClient.Credentials = new NetworkCredential("用户名", "密码");
//test@qq.com发件人地址、test@tom.com收件人地址
MailMessage message = new MailMessage(new MailAddress("test@qq.com"),new MailAddress(test@tom.com));
// message.Bcc.Add(new MailAddress("tst@qq.com")); //可以添加多个收件人
message.Body = "Hello Word!";//邮件内容
message.Subject = "this is a test";//邮件主题
//Attachment 附件
Attachment att = new Attachment(@"C:"hello.txt");
message.Attachments.Add(att);//添加附件
Console.WriteLine("Start Send Mail....");
//发送....
mailClient.Send(message);
Console.WriteLine("Send Mail Successed");
Console.ReadLine();

--------------------------------------------------------------GMAIL---------------------------------------------------
private void button1_Click(object sender, EventArgs e)
{
string MyPsd = G_password.Text;
string MyEmail = G_email.Text.Trim() + "@gmail.com";
MailMessage MMsg = new MailMessage();
MMsg.Subject = G_subject.Text.Trim();
MMsg.From = new MailAddress(MyEmail);
MMsg.To.Add(new MailAddress(G_address.Text.Trim()));
MMsg.IsBodyHtml = true;//这里启用IsBodyHtml是为了支持内容中的Html。
MMsg.BodyEncoding = Encoding.UTF8;//将正文的编码形式设置为UTF8。
MMsg.Body = G_content.Text;
SmtpClient SClient = new SmtpClient();
SClient.Host = "smtp.gmail.com";//google的smtp地址
SClient.Port = 587;//google的smtp端口
SClient.EnableSsl = true;//因为google使用了SSL(安全套接字层)加密链接所以这里的EnableSsl必须设置为true。
SClient.Credentials = new NetworkCredential(MyEmail, MyPsd);
if (G_Attachment.Text.Length>0)
{
MMsg.Attachments.Add(new Attachment(G_Attachment.Text));//判断是否有附件
}
try
{
SClient.Send(MMsg);
MessageBox.Show("邮件已经发送成功");
}
catch (Exception err)
{

            MessageBox.Show(err.Message, "错误提示");
        }



    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文包括:1、名词解释2、邮件收发过程3、JavaMail 知识概要4、发送一封符合 MIME 协议的 JavaM...
    廖少少阅读 9,570评论 2 13
  • Django 官方文档 发送email 官网地址:[https://docs.djangoproject.com/...
    学以致用123阅读 6,826评论 0 2
  • 一、相关模块介绍 发送邮件主要用到了smtplib和email两个模块,这里首先就两个模块进行一下简单的介绍: 1...
    LizPL阅读 5,154评论 0 3
  • 背景 近期需要实现一个邮件客户端的项目,类似Foxmail,outlook客户端。但项目只做消息转发,不需要完整实...
    BigBug77阅读 9,841评论 0 4
  • 话说到这里,感觉其实没有那么浓烈,因为这份感情不是当初恋爱的前三个月。有的东西或许根本就没有办法放在一起就事论...
    玛丽隔壁的奶油阅读 1,612评论 0 0