C# SendMail發(fā)送郵件功能實現(xiàn)
更新時間:2017年06月30日 14:18:08 作者:shaomine
這篇文章主要為大家詳細介紹了C# SendMail發(fā)送郵件功能實現(xiàn),具有一定的參考價值,感興趣的小伙伴們可以參考一下
最近因為用的發(fā)送郵件的地方,就查詢了資料,總結(jié)以下幾個方法
1、利用新浪郵箱發(fā)送
2、利用公司郵箱發(fā)送
3、利用CDO發(fā)送,這種方式要引用Interop.ADODB.dll(http://www.nodevice.com/dll/Interop_ADODB_dll/item20357.html)和Interop.CDO.dll()兩個文件
具體代碼如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Net.Mail; using System.Data; using CDO; using ADODB; namespace SendMailTest { class Program { static void Main(string[] args) { SendMail(); } public static string SendMsg() { DataTable dt = new DataTable(); dt.Columns.Add("name"); dt.Columns.Add("date"); dt.Columns.Add("area"); dt.Columns.Add("orgnizer"); dt.Columns.Add("keyword"); for (int i = 0; i < 10; i++) { DataRow dr = dt.NewRow(); dr["name"] = "北文中心影視產(chǎn)權(quán)交易平臺•影視項目路演季---路演項目征集" + i; dr["date"] = "2017-06-30"; dr["area"] = "北京市 北京電影學(xué)院文創(chuàng)園(平房園區(qū))" + i; dr["orgnizer"] = "北文中心影視產(chǎn)權(quán)交易" + i; dr["keyword"] = "影視" + i; dt.Rows.Add(dr); } string MailBody = "<p style=\"font-size: 10pt\">以下內(nèi)容為系統(tǒng)自動發(fā)送,請勿直接回復(fù),謝謝。</p><table cellspacing=\"1\" cellpadding=\"3\" border=\"0\" bgcolor=\"000000\" style=\"font-size: 10pt;line-height: 15px;\">"; MailBody += "<div align=\"center\">"; MailBody += "<tr>"; for (int hcol = 0; hcol < dt.Columns.Count; hcol++) { MailBody += "<td bgcolor=\"999999\"> "; MailBody += dt.Columns[hcol].ColumnName; MailBody += " </td>"; } MailBody += "</tr>"; for (int row = 0; row < dt.Rows.Count; row++) { MailBody += "<tr>"; for (int col = 0; col < dt.Columns.Count; col++) { MailBody += "<td bgcolor=\"dddddd\"> "; MailBody += dt.Rows[row][col].ToString(); MailBody += " </td>"; } MailBody += "</tr>"; } MailBody += "</table>"; MailBody += "</div>"; return MailBody; } public static void SendMail() { MailMessage msg = new MailMessage(); msg.To.Add("xxx@ctrchina.cn"); msg.CC.Add("xxxx@sina.com"); msg.From = new MailAddress("ffff@ctrchina.cn", "ffff", System.Text.Encoding.UTF8); /* 上面3個參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/ msg.Subject = "這是測試郵件";//郵件標題 msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標題編碼 //msg.Body = "郵件內(nèi)容";//郵件內(nèi)容 msg.Body = SendMsg(); msg.BodyEncoding = System.Text.Encoding.UTF8;//郵件內(nèi)容編碼 msg.IsBodyHtml = true;//是否是HTML郵件 msg.Priority = MailPriority.High;//郵件優(yōu)先級 SmtpClient client = new SmtpClient(); //client.Host = "smtp.ctrchina.cn"; client.Host = "210.77.136.200"; client.Port = 465; //client.EnableSsl = true;//經(jīng)過ssl加密 client.Credentials = new System.Net.NetworkCredential("xxx@ctrchina.cn", "password"); object userState = msg; try { //client.SendAsync(msg, userState); client.Send(msg); } catch (System.Net.Mail.SmtpException ex) { return; } } public static void SendSinaMail() { MailMessage msg = new MailMessage(); msg.To.Add("xxx@ctrchina.cn"); //msg.To.Add("xxx@sina.com"); msg.CC.Add("xxx@sina.com"); msg.From = new MailAddress("xxx@sina.com", "shao_sks", System.Text.Encoding.UTF8); /* 上面3個參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/ msg.Subject = "這是測試郵件";//郵件標題 msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標題編碼 //msg.Body = "郵件內(nèi)容";//郵件內(nèi)容 msg.Body = SendMsg(); msg.BodyEncoding = System.Text.Encoding.UTF8;//郵件內(nèi)容編碼 msg.IsBodyHtml = true;//是否是HTML郵件 msg.Priority = MailPriority.High;//郵件優(yōu)先級 SmtpClient client = new SmtpClient(); client.Host = "smtp.sina.com"; client.Port = 25; //client.EnableSsl = true;//經(jīng)過ssl加密 client.Credentials = new System.Net.NetworkCredential("username", "password"); object userState = msg; try { //client.SendAsync(msg, userState); client.Send(msg); } catch (System.Net.Mail.SmtpException ex) { return; } } public static void SenMail1() { try { CDO.Message oMsg = new CDO.Message(); Configuration MyConfig = new ConfigurationClass(); Fields MyFields = MyConfig.Fields; MyFields[@"http://schemas.microsoft.com/cdo/configuration/sendusing"].Value = 2; MyFields[@"http://schemas.microsoft.com/cdo/configuration/smtpserverport"].Value = 465; MyFields[@"http://schemas.microsoft.com/cdo/configuration/smtpserver"].Value = "210.77.136.200"; MyFields.Update(); oMsg.Configuration = MyConfig; oMsg.Subject = "Test SMTP2911111"; oMsg.HTMLBody = SendMsg(); oMsg.From = "shaoks@ctrchina.cn"; oMsg.To = "shaoks@ctrchina.cn"; oMsg.Send(); } catch (Exception ex) { return; } } } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
您可能感興趣的文章:
- c# 兩種發(fā)送郵件的方法
- c# 實現(xiàn)發(fā)送郵件到指定郵箱
- c# 實現(xiàn)發(fā)送郵件的功能
- C# 服務(wù)器發(fā)送郵件失敗實例分析
- C#實現(xiàn)QQ郵箱發(fā)送郵件
- C#實現(xiàn)發(fā)送郵件的方法
- 通過C#實現(xiàn)發(fā)送自定義的html格式郵件
- C#實現(xiàn)的自定義郵件發(fā)送類完整實例(支持多人多附件)
- C#編程實現(xiàn)發(fā)送郵件的方法(可添加附件)
- C#實現(xiàn)發(fā)送郵件的三種方法
- c#利用system.net發(fā)送html格式郵件
- c#實現(xiàn)服務(wù)器性能監(jiān)控并發(fā)送郵件保存日志
- c#調(diào)用qq郵箱smtp發(fā)送郵件修改版代碼分享
- C#調(diào)用QQ_Mail發(fā)送郵件實例代碼兩例
相關(guān)文章
automation服務(wù)器不能創(chuàng)建對象 解決方法
本文主要介紹如何解決“automation服務(wù)器不能創(chuàng)建對象”錯誤,從而解決Visual Studio.Net不能正常使用的問題,需要的朋友可以參考下。2016-06-06C#實現(xiàn)根據(jù)字節(jié)數(shù)截取字符串并加上省略號的方法
這篇文章主要介紹了C#實現(xiàn)根據(jù)字節(jié)數(shù)截取字符串并加上省略號的方法,比較實用的功能,需要的朋友可以參考下2014-07-07