C# SendMail發(fā)送郵件功能實(shí)現(xiàn)
最近因?yàn)橛玫陌l(fā)送郵件的地方,就查詢了資料,總結(jié)以下幾個(gè)方法
1、利用新浪郵箱發(fā)送
2、利用公司郵箱發(fā)送
3、利用CDO發(fā)送,這種方式要引用Interop.ADODB.dll(http://www.nodevice.com/dll/Interop_ADODB_dll/item20357.html)和Interop.CDO.dll()兩個(gè)文件
具體代碼如下:
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)交易平臺(tái)•影視項(xiàng)目路演季---路演項(xiàng)目征集" + 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)自動(dòng)發(fā)送,請(qǐng)勿直接回復(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個(gè)參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/
msg.Subject = "這是測(cè)試郵件";//郵件標(biāo)題
msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標(biāo)題編碼
//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)先級(jí)
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個(gè)參數(shù)分別是發(fā)件人地址(可以隨便寫),發(fā)件人姓名,編碼*/
msg.Subject = "這是測(cè)試郵件";//郵件標(biāo)題
msg.SubjectEncoding = System.Text.Encoding.UTF8;//郵件標(biāo)題編碼
//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)先級(jí)
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;
}
}
}
}
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- c# 兩種發(fā)送郵件的方法
- c# 實(shí)現(xiàn)發(fā)送郵件到指定郵箱
- c# 實(shí)現(xiàn)發(fā)送郵件的功能
- C# 服務(wù)器發(fā)送郵件失敗實(shí)例分析
- C#實(shí)現(xiàn)QQ郵箱發(fā)送郵件
- C#實(shí)現(xiàn)發(fā)送郵件的方法
- 通過C#實(shí)現(xiàn)發(fā)送自定義的html格式郵件
- C#實(shí)現(xiàn)的自定義郵件發(fā)送類完整實(shí)例(支持多人多附件)
- C#編程實(shí)現(xiàn)發(fā)送郵件的方法(可添加附件)
- C#實(shí)現(xiàn)發(fā)送郵件的三種方法
- c#利用system.net發(fā)送html格式郵件
- c#實(shí)現(xiàn)服務(wù)器性能監(jiān)控并發(fā)送郵件保存日志
- c#調(diào)用qq郵箱smtp發(fā)送郵件修改版代碼分享
- C#調(diào)用QQ_Mail發(fā)送郵件實(shí)例代碼兩例
相關(guān)文章
C#基于Modbus三種CRC16校驗(yàn)方法的性能對(duì)比
這篇文章主要介紹了C#基于Modbus三種CRC16校驗(yàn)方法的性能對(duì)比,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
C#多線程編程之使用ReaderWriterLock類實(shí)現(xiàn)多用戶讀與單用戶寫同步的方法
這篇文章主要介紹了C#多線程編程之使用ReaderWriterLock類實(shí)現(xiàn)多用戶讀與單用戶寫同步的方法,涉及C#多線程操作讀寫鎖定的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11
C#實(shí)現(xiàn)圖形區(qū)域組合操作的方法
這篇文章主要介紹了C#實(shí)現(xiàn)圖形區(qū)域組合操作的方法,涉及C#操作圖片實(shí)現(xiàn)組合操作的相關(guān)技巧,需要的朋友可以參考下2015-06-06
C#數(shù)據(jù)綁定(DataBinding)簡(jiǎn)單實(shí)現(xiàn)方法
這篇文章主要介紹了C#數(shù)據(jù)綁定(DataBinding)簡(jiǎn)單實(shí)現(xiàn)方法,以簡(jiǎn)單實(shí)例形式簡(jiǎn)單分析了C#實(shí)現(xiàn)數(shù)據(jù)綁定與讀取的方法,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08

