商業源碼熱門下載www.html.org.cn
在.net 1.1里面,如何用程序控制來發送電子郵件。比如,網站用戶注冊成功后,給注冊用戶自動發一封郵件,提示用戶的注冊信息。再則,有時候需要每天定時的把一個報表發給固定的幾個人。綜合起來需要解決如下的幾個問題:
1、smtp服務器身份認證。
2、收件人為多人時,怎么發送。
3、發送郵件附件。
實現程序如下:
為了使用system.web.mail,在名字空間里引用:
using system.web.mail;
定義一個發送郵件的過程
/**//// <summary>
/// 發送電子郵件郵件
/// </summary>
/// <param name="to">接收電子郵件地址</param>
/// <param name="subject">郵件主題</param>
/// <param name="body">郵件正文</param>
/// <param name="mailatta">附件</param>
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="/"秋雨/"<[email protected]>";
//定義郵件的接收地址
m_mail.to = to.tostring();
//定義郵件的暗送地址
m_mail.bcc="[email protected]";
//定義郵件的抄送地址
m_mail.cc = "[email protected]";
//定義郵件的主題
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 protected]>";前面是顯示的名稱,后面是真實的email地址 ,如果收件人地址為多人,以“;” 隔開,例如:"秋雨"<[email protected]>;"管理員"<[email protected]>注意使用轉義字符。
我們使用程序來調用
private void button_click(object sender, system.eventargs e)
{
string mailaddr="/"秋雨/"<;/">[email protected]>;/"管理員/"<[email protected]> ";
string subject="請查收統計報表";
string mailbody="test";
string [email protected]"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)平臺下測試通過。
新聞熱點
疑難解答