Go homepage(回首页)
Upload pictures (上传图片)
Write articles (发文字帖)

The author:(作者)delv
published in(发表于) 2014/1/6 9:16:04
通过System.Web.Mail程序发邮件_[Asp.Net教程]

通过System.Web.Mail程序发邮件_[Asp.Net教程]

在.net 1.1里面,如何用程序控制来发送电子邮件。比如,网站用户注册成功后,给注册用户自动发一封邮件,提示用户的注册信息。再则,有时候需要每天定时的把一个报表发给固定的几个人。综合起来需要解决如下的几个问题:
  1、SMTP服务器身份认证。
  2、收件人为多人时,怎么发送。
  3、发送邮件附件。

  实现程序如下:


  为了使用System.Web.Mail,在名字空间里引用:
  using System.Web.Mail;


  定义一个发送邮件的过程


/**////


/// 发送电子邮件邮件
///

/// 接收电子邮件地址
/// 邮件主题
/// 邮件正文
/// 附件
public void SendMail(string to,string subject,string body,MailAttachment mailatta)
{


MailMessage m_Mail = new MailMessage();
//定义SMTP服务器的名称
SmtpMail.SmtpServer = "mail.13590.com";


//定义SMTP邮件服务器需要身份认证
m_Mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//认证的用户名
m_Mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "username");
//认证密码
m_Mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword","password");


//定义邮件的发送地址
m_Mail.From="\"秋雨\"";


//定义邮件的接收地址
m_Mail.To = to.ToString();


//定义邮件的暗送地址
m_Mail.Bcc="bcc@13590.com";
//定义邮件的抄送地址
m_Mail.Cc = "cc@13590.com";
//定义邮件的主题
m_Mail.Subject = subject;
//定义邮件的主体
m_Mail.Body = body;
//'邮件以 HTML的格式发送
m_Mail.BodyFormat = MailFormat.Text;
//定义邮件的有限级,在此设定为高
m_Mail.Priority = MailPriority.High;
// 给发送的邮件附加上一个附件
if (mailatta!=null)
{
m_Mail.Attachments.Add(mailatta);
}
try
{
SmtpMail.Send(m_Mail);
}
catch
{
//邮件发送有错
Memo1.Text=Memo1.Text + subject;
}
}


  注意邮件的地址"\"秋雨\"";前面是显示的名称,后面是真实的Email地址 ,如果收件人地址为多人,以“;” 隔开,例如:"秋雨";"管理员"注意使用转义字符。


  我们使用程序来调用



private void button_Click(object sender, System.EventArgs e)
{

string MailAddr="\"秋雨\";\"管理员\" ";
string Subject="请查收统计报表";
string MailBody="Test";
string PathMailAtta=@"C:\统计报表.xls";


MailAttachment mailatta;
try
{
mailatta= new MailAttachment(PathMailAtta);

}
catch
{
Memo1.Text=Memo1.Text+PathMailAtta+"有异常,检查是否打开";
return;
}
SendGroupMail(MailAddr,Subject,MailBody,mailatta);
}


  以上程序在VS.Net2003,Windows 2003(SP1)平台下测试通过。


来源:网络







If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)





QQ:154298438
QQ:417480759