C#操作源码email.docx
- 文档编号:8509557
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:33
- 大小:46.28KB
C#操作源码email.docx
《C#操作源码email.docx》由会员分享,可在线阅读,更多相关《C#操作源码email.docx(33页珍藏版)》请在冰豆网上搜索。
C#操作源码email
C#发送Email邮件方法总结
通过.NetFrameWork2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送:
1.通过Localhost;
2.通过普通SMTP;
3.通过SSL的SMTP;
下面一个一个来说:
1.通过LocalHost
1publicvoidSendMailLocalhost()
2...{
3System.Net.Mail.MailMessagemsg=newSystem.Net.Mail.MailMessage();
4msg.To.Add("a@");
5msg.To.Add("b@");
6/**//*
7*msg.To.Add("b@");
8*msg.To.Add("b@");
9*msg.To.Add("b@");可以发送给多人
10*/
11msg.CC.Add("c@");
12/**//*
13*msg.CC.Add("c@");
14*msg.CC.Add("c@");可以抄送给多人
15*/
16msg.From=newMailAddress("a@","AlphaWu",System.Text.Encoding.UTF8);
17/**//*上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/
18msg.Subject="这是测试邮件";//邮件标题
19msg.SubjectEncoding=System.Text.Encoding.UTF8;//邮件标题编码
20msg.Body="邮件内容";//邮件内容
21msg.BodyEncoding=System.Text.Encoding.UTF8;//邮件内容编码
22msg.IsBodyHTML=false;//是否是HTML邮件
23msg.Priority=MailPriority.High;//邮件优先级
24
25SmtpClientclient=newSmtpClient();
26client.Host="localhost";
27objectuserState=msg;
28try
29...{
30client.SendAsync(msg,userState);
31//简单一点儿可以client.Send(msg);
32MessageBox.Show("发送成功");
33}
34catch(System.Net.Mail.SmtpExceptionex)
35...{
36MessageBox.Show(ex.Message,"发送邮件出错");
37}
38}
39
2.通过普通SMTP
1publicvoidSendMailUseZj()
2...{
3System.Net.Mail.MailMessagemsg=newSystem.Net.Mail.MailMessage();
4msg.To.Add("a@");
5msg.To.Add("b@");
6/**//*
7*msg.To.Add("b@");
8*msg.To.Add("b@");
9*msg.To.Add("b@");可以发送给多人
10*/
11msg.CC.Add("c@");
12/**//*
13*msg.CC.Add("c@");
14*msg.CC.Add("c@");可以抄送给多人
15*/
16msg.From=newMailAddress("a@","AlphaWu",System.Text.Encoding.UTF8);
17/**//*上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/
18msg.Subject="这是测试邮件";//邮件标题
19msg.SubjectEncoding=System.Text.Encoding.UTF8;//邮件标题编码
20msg.Body="邮件内容";//邮件内容
21msg.BodyEncoding=System.Text.Encoding.UTF8;//邮件内容编码
22msg.IsBodyHtml=false;//是否是HTML邮件
23msg.Priority=MailPriority.High;//邮件优先级
24
25SmtpClientclient=newSmtpClient();
26client.Credentials=newSystem.Net.NetworkCredential("username@","userpass");
27//在注册的邮箱和密码
28client.Host="";
29objectuserState=msg;
30try
31...{
32client.SendAsync(msg,userState);
33//简单一点儿可以client.Send(msg);
34MessageBox.Show("发送成功");
35}
36catch(System.Net.Mail.SmtpExceptionex)
37...{
38MessageBox.Show(ex.Message,"发送邮件出错");
39}
40}
41
上述方法不适用于所有SMTP,经测试可以,而不行
3.通过SSL的SMTP
1publicvoidSendMailUseGmail()
2...{
3System.Net.Mail.MailMessagemsg=newSystem.Net.Mail.MailMessage();
4msg.To.Add("a@");
5msg.To.Add("b@");
6/**//*
7*msg.To.Add("b@");
8*msg.To.Add("b@");
9*msg.To.Add("b@");可以发送给多人
10*/
11msg.CC.Add("c@");
12/**//*
13*msg.CC.Add("c@");
14*msg.CC.Add("c@");可以抄送给多人
15*/
16msg.From=newMailAddress("a@","AlphaWu",System.Text.Encoding.UTF8);
17/**//*上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/
18msg.Subject="这是测试邮件";//邮件标题
19msg.SubjectEncoding=System.Text.Encoding.UTF8;//邮件标题编码
20msg.Body="邮件内容";//邮件内容
21msg.BodyEncoding=System.Text.Encoding.UTF8;//邮件内容编码
22msg.IsBodyHtml=false;//是否是HTML邮件
23msg.Priority=MailPriority.High;//邮件优先级
24
25SmtpClientclient=newSmtpClient();
26client.Credentials=newSystem.Net.NetworkCredential("username@","password");
27//上述写你的GMail邮箱和密码
28client.Port=587;//Gmail使用的端口
29client.Host="";
30client.EnableSsl=true;//经过ssl加密
31objectuserState=msg;
32try
33...{
34client.SendAsync(msg,userState);
35//简单一点儿可以client.Send(msg);
36MessageBox.Show("发送成功");
37}
38catch(System.Net.Mail.SmtpExceptionex)
39...{
40MessageBox.Show(ex.Message,"发送邮件出错");
41}
42}
43
通过Gmail来发送邮件,成功率极高,几乎都可以发到,推荐使用
C#发送Email邮件三种方法的总结
通过.NetFrameWork2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送:
1.通过Localhost;
2.通过普通SMTP;
3.通过SSL的SMTP;
下面一个一个来说:
1.通过LocalHost
publicvoidSendMailLocalhost()
{
System.Net.Mail.MailMessagemsg=newSystem.Net.Mail.MailMessage();
msg.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=newMailAddress("a@","AlphaWu",System.Text.Encoding.UTF8);
/*上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/
msg.Subject="这是测试邮件";//邮件标题
msg.SubjectEncoding=System.Text.Encoding.UTF8;//邮件标题编码
msg.Body="邮件内容";//邮件内容
msg.BodyEncoding=System.Text.Encoding.UTF8;//邮件内容编码
msg.IsBodyHtml=false;//是否是HTML邮件
msg.Priority=MailPriority.High;//邮件优先级
SmtpClientclient=newSmtpClient();
client.Host="localhost";
objectuserState=msg;
try
{
client.SendAsync(msg,userState);
//简单一点儿可以client.Send(msg);
MessageBox.Show("发送成功");
}
catch(System.Net.Mail.SmtpExceptionex)
{
MessageBox.Show(ex.Message,"发送邮件出错");
}
}
2.通过普通SMTP
publicvoidSendMailUseZj()
{
System.Net.Mail.MailMessagemsg=newSystem.Net.Mail.MailMessage();
msg.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=newMailAddress("a@","AlphaWu",System.Text.Encoding.UTF8);
/*上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/
msg.Subject="这是测试邮件";//邮件标题
msg.SubjectEncoding=System.Text.Encoding.UTF8;//邮件标题编码
msg.Body="邮件内容";//邮件内容
msg.BodyEncoding=System.Text.Encoding.UTF8;//邮件内容编码
msg.IsBodyHtml=false;//是否是HTML邮件
msg.Priority=MailPriority.High;//邮件优先级
SmtpClientclient=newSmtpClient();
client.Credentials=newSystem.Net.NetworkCredential("username@","userpass");
//在注册的邮箱和密码
client.Host="";
objectuserState=msg;
try
{
client.SendAsync(msg,userState);
//简单一点儿可以client.Send(msg);
MessageBox.Show("发送成功");
}
catch(System.Net.Mail.SmtpExceptionex)
{
MessageBox.Show(ex.Message,"发送邮件出错");
}
}
上述方法不适用于所有SMTP,经测试可以,而不行
3.通过SSL的SMTP
publicvoidSendMailUseGmail()
{
System.Net.Mail.MailMessagemsg=newSystem.Net.Mail.MailMessage();
msg.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=newMailAddress("a@","AlphaWu",System.Text.Encoding.UTF8);
/*上面3个参数分别是发件人地址(可以随便写),发件人姓名,编码*/
msg.Subject="这是测试邮件";//邮件标题
msg.SubjectEncoding=System.Text.Encoding.UTF8;//邮件标题编码
msg.Body="邮件内容";//邮件内容
msg.BodyEncoding=System.Text.Encoding.UTF8;//邮件内容编码
msg.IsBodyHtml=false;//是否是HTML邮件
msg.Priority=MailPriority.High;//邮件优先级
SmtpClientclient=newSmtpClient();
client.Credentials=newSystem.Net.NetworkCredential("username@","password");
//上述写你的GMail邮箱和密码
client.Port=587;//Gmail使用的端口
client.Host="";
client.EnableSsl=true;//经过ssl加密
objectuserState=msg;
try
{
client.SendAsync(msg,userState);
//简单一点儿可以client.Send(msg);
MessageBox.Show("发送成功");
}
catch(System.Net.Mail.SmtpExceptionex)
{
MessageBox.Show(ex.Message,"发送邮件出错");
}
}
通过Gmail来发送邮件,成功率极高,几乎都可以发到,推荐使用。
c#email发送|c#email接收
SMTP
1.添加usingSystem.Web.Mail;引用
2.Mail发送:
privateSystem.Web.Mail.MailMessagem_Mail=newMailMessage();
m_Mail.From="admin@";
//m_Mail.To="flashcjy@"
msg.To.Add("flashcjy@");
msg.To.Add("flashcjy@");
m_Mail.Subject="发送Email测试";
m_Mail.BodyFormat=MailFormat.Html;
m_Mail.Body="
SmtpMail.Send(m_Mail);
txtMsg.Text="发送成功";
3.Mail接收
usingSystem;
usingSystem.Net.Sockets;
usingSystem.Net;
usingSystem.Security.Cryptography;
usingSystem.IO;
/////////////////////////////////////////////
//类名:
Pop3 //
//功能:
接收电子邮件 //
/////////////////////////////////////////////
namespaceZTSX.Email
{
///
///Pop3的摘要说明。
///
publicclassPop3
{
privatestringmstrHost =null; //主机名称或IP地址
privateintmintPort =110; //主机的端口号(默认为110)
privateTcpClientmtcpClient =null; //客户端
privateNetworkStreammnetStream =null; //网络基础数据流
privateStreamReaderm_stmReader =null; //读取字节流
privatestringmstrStatMessage =null; //执行STAT命令后得到的消息(从中得到邮件数)
///
///构造函数
///
///
publicPop3()
{
}
///
///构造函数
///
///
publicPop3(stringhost)
{
mstrHost=host;
}
///
///构造函数
///
///
///
///
publicPop3(stringhost,intport)
{
mstrHost=host;
mintPort=port;
}
#region 属性
///
///主机名称或IP地址
///
///
publicstringHostName
{
get{returnmstrHost;}
set{mstrHost=value;}
}
///
///主机的端口号
///
///
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C# 操作 源码 email