始找的代码只能发送无SMTP验证的邮件,但现在很多EMAIL发送时都需要验证,后来查找了下MSDN的帮助,找到了发送验证的代码,贴出来希望对大家有所帮助!
复制代码 代码如下:
publicstaticintsendmail(stringto,stringbody,stringsubject)
{
try
{
intnContain=0;
///添加发件人地址
stringfrom="你的发送EMAIL";
MailMessagemailMsg=newMailMessage();
mailMsg.From=newMailAddress(from);
nContain+=mailMsg.From.Address.Length;
///添加收件人地址
mailMsg.To.Add(to);
nContain+=mailMsg.To.ToString().Length;
///添加邮件主题
mailMsg.Subject=subject;
mailMsg.SubjectEncoding=Encoding.UTF8;
nContain+=mailMsg.Subject.Length;
///添加邮件内容
mailMsg.Body=body;
mailMsg.BodyEncoding=Encoding.UTF8;
mailMsg.IsBodyHtml=true;
nContain+=mailMsg.Body.Length;
if(mailMsg.IsBodyHtml==true)
{
nContain+=100;
}
///发送邮件
try
{
//定义发送邮件的Client
SmtpClientclient=newSmtpClient();
//表示以当前登录用户的默认凭据进行身份验证
client.UseDefaultCredentials=true;
//包含用户名和密码
client.Credentials=newSystem.Net.NetworkCredential(application.GetapplicationSendmail(),application.GetapplicationSendpass());
///设置邮件服务器主机的IP地址
client.Host="SMTP服务器IP"
///设置邮件服务器的端口
client.Port=25;
///配置发送邮件的属性
client.DeliveryMethod=SmtpDeliveryMethod.Network;
//System.Net.Mail.MailMessagemessage=newSystem.Net.Mail.MailMessage(strFrom,strto,strSubject,strBody);
mailMsg.Priority=System.Net.Mail.MailPriority.Normal;
//client.UseDefaultCredentials=false;
///发送邮件
client.Send(mailMsg);
return1;
}
catch(Exceptionex){return0;}
}
catch(Exceptionex){return0;}
}