1、C#操作源码emailC#发送Email邮件方法总结通过.Net FrameWork 2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送: 1.通过Localhost; 2.通过普通SMTP; 3.通过SSL的SMTP; 下面一个一个来说: 1.通过LocalHost 1public void SendMailLocalhost() 2 . 3 System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(); 4 msg.To.Add(a); 5 msg.To.Add(b); 6 /*
2、/* 7 * msg.To.Add(b); 8 * msg.To.Add(b); 9 * msg.To.Add(b);可以发送给多人 10 */ 11 msg.CC.Add(c); 12 /*/* 13 * msg.CC.Add(c); 14 * msg.CC.Add(c);可以抄送给多人 15 */ 16 msg.From = new MailAddress(a, AlphaWu, System.Text.Encoding.UTF8); 17 /*/* 上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/ 18 msg.Subject = 这是测试邮件;/邮件标题 19 msg.
3、SubjectEncoding = System.Text.Encoding.UTF8;/邮件标题编码 20 msg.Body = 邮件内容;/邮件内容 21 msg.BodyEncoding = System.Text.Encoding.UTF8;/邮件内容编码 22 msg.IsBodyHTML = false;/是否是HTML邮件 23 msg.Priority = MailPriority.High;/邮件优先级 24 25 SmtpClient client = new SmtpClient(); 26 client.Host = localhost; 27 object userS
4、tate = msg; 28 try 29 . 30 client.SendAsync(msg, userState); 31 /简单一点儿可以client.Send(msg); 32 MessageBox.Show(发送成功); 33 34 catch (System.Net.Mail.SmtpException ex) 35 . 36 MessageBox.Show(ex.Message, 发送邮件出错); 37 38 39 2.通过普通SMTP 1public void SendMailUseZj() 2 . 3 System.Net.Mail.MailMessage msg = new
5、 System.Net.Mail.MailMessage(); 4 msg.To.Add(a); 5 msg.To.Add(b); 6 /*/* 7 * msg.To.Add(b); 8 * msg.To.Add(b); 9 * msg.To.Add(b);可以发送给多人 10 */ 11 msg.CC.Add(c); 12 /*/* 13 * msg.CC.Add(c); 14 * msg.CC.Add(c);可以抄送给多人 15 */ 16 msg.From = new MailAddress(a, AlphaWu, System.Text.Encoding.UTF8); 17 /*/*
6、上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/ 18 msg.Subject = 这是测试邮件;/邮件标题 19 msg.SubjectEncoding = System.Text.Encoding.UTF8;/邮件标题编码 20 msg.Body = 邮件内容;/邮件内容 21 msg.BodyEncoding = System.Text.Encoding.UTF8;/邮件内容编码 22 msg.IsBodyHtml = false;/是否是HTML邮件 23 msg.Priority = MailPriority.High;/邮件优先级 24 25 SmtpClient
7、client = new SmtpClient(); 26 client.Credentials = new System.Net.NetworkCredential(username, userpass); 27 /在注册的邮箱和密码 28 client.Host = ; 29 object userState = msg; 30 try 31 . 32 client.SendAsync(msg, userState); 33 /简单一点儿可以client.Send(msg); 34 MessageBox.Show(发送成功); 35 36 catch (System.Net.Mail.Sm
8、tpException ex) 37 . 38 MessageBox.Show(ex.Message, 发送邮件出错); 39 40 41 上述方法不适用于所有SMTP,经测试可以,而不行 3.通过SSL的SMTP 1public void SendMailUseGmail() 2 . 3 System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(); 4 msg.To.Add(a); 5 msg.To.Add(b); 6 /*/* 7 * msg.To.Add(b); 8 * msg.To.Add(b); 9 * ms
9、g.To.Add(b);可以发送给多人 10 */ 11 msg.CC.Add(c); 12 /*/* 13 * msg.CC.Add(c); 14 * msg.CC.Add(c);可以抄送给多人 15 */ 16 msg.From = new MailAddress(a, AlphaWu, System.Text.Encoding.UTF8); 17 /*/* 上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/ 18 msg.Subject = 这是测试邮件;/邮件标题 19 msg.SubjectEncoding = System.Text.Encoding.UTF8;/邮件
10、标题编码 20 msg.Body = 邮件内容;/邮件内容 21 msg.BodyEncoding = System.Text.Encoding.UTF8;/邮件内容编码 22 msg.IsBodyHtml = false;/是否是HTML邮件 23 msg.Priority = MailPriority.High;/邮件优先级 24 25 SmtpClient client = new SmtpClient(); 26 client.Credentials = new System.Net.NetworkCredential(username, password); 27 /上述写你的GMa
11、il邮箱和密码 28 client.Port = 587;/Gmail使用的端口 29 client.Host = ; 30 client.EnableSsl = true;/经过ssl加密 31 object userState = msg; 32 try 33 . 34 client.SendAsync(msg, userState); 35 /简单一点儿可以client.Send(msg); 36 MessageBox.Show(发送成功); 37 38 catch (System.Net.Mail.SmtpException ex) 39 . 40 MessageBox.Show(ex
12、.Message, 发送邮件出错); 41 42 43 通过Gmail来发送邮件,成功率极高,几乎都可以发到,推荐使用C#发送Email邮件三种方法的总结通过.Net FrameWork 2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送:1.通过Localhost;2.通过普通SMTP;3.通过SSL的SMTP;下面一个一个来说: 1.通过LocalHostpublic void SendMailLocalhost()System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage();m
13、sg.To.Add(a);msg.To.Add(b);/* msg.To.Add(b);* msg.To.Add(b);* msg.To.Add(b);可以发送给多人*/msg.CC.Add(c);/* msg.CC.Add(c);* msg.CC.Add(c);可以抄送给多人*/msg.From = new MailAddress(a, AlphaWu, System.Text.Encoding.UTF8);/* 上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/msg.Subject = 这是测试邮件;/邮件标题msg.SubjectEncoding = System.Tex
14、t.Encoding.UTF8;/邮件标题编码msg.Body = 邮件内容;/邮件内容msg.BodyEncoding = System.Text.Encoding.UTF8;/邮件内容编码msg.IsBodyHtml = false;/是否是HTML邮件msg.Priority = MailPriority.High;/邮件优先级SmtpClient client = new SmtpClient();client.Host = localhost;object userState = msg;try client.SendAsync(msg, userState);/简单一点儿可以cli
15、ent.Send(msg);MessageBox.Show(发送成功);catch (System.Net.Mail.SmtpException ex) MessageBox.Show(ex.Message, 发送邮件出错); 2.通过普通SMTPpublic void SendMailUseZj() System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(); msg.To.Add(a); msg.To.Add(b); /* * msg.To.Add(b); * msg.To.Add(b); * msg.To.Add
16、(b);可以发送给多人 */msg.CC.Add(c); /* * msg.CC.Add(c); * msg.CC.Add(c);可以抄送给多人 */ msg.From = new MailAddress(a, AlphaWu, System.Text.Encoding.UTF8); /* 上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/ msg.Subject = 这是测试邮件;/邮件标题 msg.SubjectEncoding = System.Text.Encoding.UTF8;/邮件标题编码 msg.Body = 邮件内容;/邮件内容 msg.BodyEncoding
17、 = System.Text.Encoding.UTF8;/邮件内容编码 msg.IsBodyHtml = false;/是否是HTML邮件 msg.Priority = MailPriority.High;/邮件优先级 SmtpClient client = new SmtpClient(); client.Credentials = new System.Net.NetworkCredential(username, userpass); /在注册的邮箱和密码 client.Host = ; object userState = msg; try client.SendAsync(msg,
18、 userState); /简单一点儿可以client.Send(msg); MessageBox.Show(发送成功); catch (System.Net.Mail.SmtpException ex) MessageBox.Show(ex.Message, 发送邮件出错); 上述方法不适用于所有SMTP,经测试可以,而不行3.通过SSL的SMTPpublic void SendMailUseGmail() System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(); msg.To.Add(a); msg.To.Ad
19、d(b);/* msg.To.Add(b); * msg.To.Add(b); * msg.To.Add(b);可以发送给多人*/ msg.CC.Add(c); /* msg.CC.Add(c);* msg.CC.Add(c);可以抄送给多人 */ msg.From = new MailAddress(a, AlphaWu, System.Text.Encoding.UTF8); /* 上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/ msg.Subject = 这是测试邮件;/邮件标题 msg.SubjectEncoding = System.Text.Encoding.UT
20、F8;/邮件标题编码 msg.Body = 邮件内容;/邮件内容 msg.BodyEncoding = System.Text.Encoding.UTF8;/邮件内容编码 msg.IsBodyHtml = false;/是否是HTML邮件 msg.Priority = MailPriority.High;/邮件优先级 SmtpClient client = new SmtpClient(); client.Credentials = new System.Net.NetworkCredential(username, password); /上述写你的GMail邮箱和密码 client.Por
21、t = 587;/Gmail使用的端口 client.Host = ; client.EnableSsl = true;/经过ssl加密 object userState = msg; tryclient.SendAsync(msg, userState); /简单一点儿可以client.Send(msg); MessageBox.Show(发送成功); catch (System.Net.Mail.SmtpException ex) MessageBox.Show(ex.Message, 发送邮件出错); 通过Gmail来发送邮件,成功率极高,几乎都可以发到,推荐使用。c# email 发送
22、|c# email 接收SMTP1.添加 using System.Web.Mail;引用2.Mail 发送:private System.Web.Mail.MailMessage m_Mail=new MailMessage(); m_Mail.From=admin;/m_Mail.To=flashcjymsg.To.Add(flashcjy); msg.To.Add(flashcjy); m_Mail.Subject=发送Email测试;m_Mail.BodyFormat=MailFormat.Html;m_Mail.Body=SmtpMail.Send(m_Mail);txtMsg.Te
23、xt=发送成功;3.Mail接收using System;using System.Net.Sockets;using System.Net;using System.Security.Cryptography;using System.IO; / / 类名:Pop3 / / 功能:接收电子邮件 / / namespace ZTSX.Email/ / Pop3 的摘要说明。/ public class Pop3private string mstrHost= null;/主机名称或IP地址private int mintPort= 110;/主机的端口号(默认为110)private TcpC
24、lient mtcpClient= null;/客户端private NetworkStream mnetStream= null;/网络基础数据流private StreamReader m_stmReader= null;/读取字节流private string mstrStatMessage= null;/执行STAT命令后得到的消息(从中得到邮件数)/ / 构造函数/ / 一个邮件接收对象public Pop3()/ / 构造函数/ / 主机名称或IP地址public Pop3(string host)mstrHost = host;/ / 构造函数/ / 主机名称或IP地址/ 主机的端口号/ 一个邮件接收对象public Pop3(string host,int port)mstrHost = host;mintPort = port;#region属性/ / 主机名称或IP地址/ / 主机名称或IP地址public string HostNamegetreturn mstrHost;setmstrHost = value;/ / 主机的端口号/ / 主机的端口号
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1