SMTP email from C#
/// <summary>
/// 一人一附件发送邮件
/// 2017-05-17 涂聚文 GeovinDu
/// </summary>
/// <param name="To">接收邮件人</param>
/// <param name="Subject">邮件标题</param>
/// <param name="Msg">邮件内容</param>
/// <param name="bodyHtml">是否網頁</param>
/// <param name="AttachmentStream"></param>
/// <param name="AttachmentFileName">附件</param>
/// <returns></returns>
public static bool SendEmaildu(string To, string Subject, string Msg, bool bodyHtml, MemoryStream AttachmentStream,string AttachmentFileName)
{
bool SendOk = false;
try
{
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], To, Subject, Msg);
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8; System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false;
if (AttachmentStream != null && AttachmentFileName != null)
{ // ADD AN ATTACHMENT.
//String sFile = @"C:\Source\LNS_IS.TXT";
//MailAttachment oAttch = new MailAttachment(sFile, MailEncoding.Base64);
//string filePath = @"C:\TestEmail\SKYPE11月黑咭生日會員.xls";
//MemoryStream memStream = new MemoryStream();
//using (FileStream fileStream = File.OpenRead(filePath))
//{ // memStream.SetLength(fileStream.Length);
// fileStream.Read(memStream.GetBuffer(), 0, (int)fileStream.Length);
//} newMsg.Attachments.Add(new Attachment(AttachmentStream, AttachmentFileName)); //MediaTypeNames.Image.Jpeg) //System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(AttachmentStream, AttachmentFileName);
//System.Net.Mime.ContentDisposition disposition = attachment.ContentDisposition;
//disposition.FileName = AttachmentFileName;
//disposition.DispositionType = System.Net.Mime.DispositionTypeNames.Attachment;
//newMsg.Attachments.Add(attachment); }
newMsg.IsBodyHtml = bodyHtml; smtpClient.Send(newMsg);
SendOk = true;
//return SENT_OK;
}
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
//"Error: " + ex.Message + "<br/><br/>Inner Exception: "+ ex.InnerException; }
AttachmentStream.Close();
return SendOk; }
/// <summary>
/// 一人一附件发送邮件
/// 2017-05-17 涂聚文 GeovinDu
/// </summary>
/// <param name="To">接收邮件人</param>
/// <param name="Subject">邮件标题</param>
/// <param name="Msg">邮件内容</param>
/// <param name="bodyHtml">是否網頁</param>
/// <param name="AttachmentFileName">附件</param>
/// <returns></returns>
public static bool SendEmaildu(string To, string Subject, string Msg, bool bodyHtml, string AttachmentFileName)
{
MemoryStream AttachmentStream = new MemoryStream();
bool SendOk = false;
try
{
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], To, Subject, Msg);
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8; System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false;
if (AttachmentStream != null && AttachmentFileName != null)
{ // ADD AN ATTACHMENT.
//String sFile = @"C:\Source\LNS_IS.TXT";
//MailAttachment oAttch = new MailAttachment(sFile, MailEncoding.Base64);
//string filePath = @"C:\TestEmail\SKYPE11月黑咭生日會員.xls";
//MemoryStream memStream = new MemoryStream();
//using (FileStream fileStream = File.OpenRead(filePath))
//{ // memStream.SetLength(fileStream.Length);
// fileStream.Read(memStream.GetBuffer(), 0, (int)fileStream.Length);
//} newMsg.Attachments.Add(new Attachment(AttachmentStream, AttachmentFileName)); //MediaTypeNames.Image.Jpeg) //System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(AttachmentStream, AttachmentFileName);
//System.Net.Mime.ContentDisposition disposition = attachment.ContentDisposition;
//disposition.FileName = AttachmentFileName;
//disposition.DispositionType = System.Net.Mime.DispositionTypeNames.Attachment;
//newMsg.Attachments.Add(attachment); }
newMsg.IsBodyHtml = bodyHtml;
smtpClient.Send(newMsg);
SendOk = true;
//return SENT_OK;
}
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
//"Error: " + ex.Message + "<br/><br/>Inner Exception: "+ ex.InnerException; }
AttachmentStream.Close();
return SendOk; } /// <summary>
/// 一人多附件发送邮件
/// 2019-06-18 涂聚文 GeovinDu
/// </summary>
/// <param name="To">接收邮件人</param>
/// <param name="Subject">邮件标题</param>
/// <param name="Msg">邮件内容</param>
/// <param name="bodyHtml">是否網頁</param>
/// <param name="AttachmentFiles">多附件</param>
/// <returns></returns>
public static bool SendEmailduFiles(string To, string Subject, string Msg, bool bodyHtml, List<string> AttachmentFiles)
{
MemoryStream AttachmentStream = new MemoryStream();
bool SendOk = false;
try
{
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], To, Subject, Msg);
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8; System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false; if (AttachmentStream != null && AttachmentFiles != null)
{ foreach (string filename in AttachmentFiles)
{
newMsg.Attachments.Add(new Attachment(AttachmentStream, filename)); //MediaTypeNames.Image.Jpeg) } }
newMsg.IsBodyHtml = bodyHtml;
smtpClient.Send(newMsg);
SendOk = true;
}
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
}
AttachmentStream.Close();
return SendOk;
} /// <summary>
/// 多人多附件发送邮件
/// 不考虑统计每封邮件发送状态(另外考虑完善代码)
/// 2019-06-18 涂聚文 GeovinDu
/// </summary>
/// <param name="Tos">多人接收邮件人</param>
/// <param name="Subject">邮件标题</param>
/// <param name="Msg">邮件内容</param>
/// <param name="bodyHtml">是否網頁</param>
/// <param name="AttachmentFiles">多附件</param>
/// <returns></returns>
public static bool SendEmailsAndFiles(List<string> Tos, string Subject, string Msg, bool bodyHtml, List<string> AttachmentFiles)
{
MemoryStream AttachmentStream = new MemoryStream();
bool SendOk = false;
List<Attachment> all = new List<Attachment>();
try
{
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (string filename in AttachmentFiles)
{ all.Add(new Attachment(AttachmentStream, filename));
}
}
if (Tos.Count > 0)
{ foreach (string To in Tos)
{
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], To, Subject, Msg);
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8;
System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false;
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (Attachment attname in all)
{
newMsg.Attachments.Add(attname); //MediaTypeNames.Image.Jpeg) }
}
newMsg.IsBodyHtml = bodyHtml;
smtpClient.Send(newMsg);
SendOk = true;
}
}
}
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
}
AttachmentStream.Close();
return SendOk;
}
测试代码:
MemoryStream theMemStream = new MemoryStream();
string file = @"C:\TestEmail\SKYPE11月黑咭生日會員.xls"; //C:\TestEmail\Top1000WorldBanks2014.pdf
if (File.Exists(file))
{
//AttachmentStream = File.Open(file, FileMode.Open, FileAccess.Read); byte[] filebyte = MirosoftSmptHelper.ReadFile(file); theMemStream.Write(filebyte, 0, filebyte.Length);// = File.OpenRead(file);
theMemStream.Position = 0; //theMemStream.Close(); // AttachmentStream = theMemStream;// BytesToStream(filebyte); //new MemoryStream(filebyte);// // BytesToStream(filebyte);// FileToStream(file);// //AttachmentStream.CanTimeout =true;
//AttachmentStream.ReadTimeout = 1000;
//AttachmentStream.WriteTimeout = 1000;
//AttachmentStream = BytesToStream(filebyte); //theMemStream.Close();
}
List<string> AttachmentFiles = new List<string>();
AttachmentFiles.Add("馬拉松獎牌刻字.xlsx");
AttachmentFiles.Add("进一步优化供给推动消费平稳增长2019.pdf");
AttachmentFiles.Add("逃犯条例草案.pdf");
AttachmentFiles.Add("复习卷14.doc");
List<string> Tos = new List<string>();
Tos.Add("geovindu@163.com");
Tos.Add("geovindu@hotmail.com");
Tos.Add("geovi@qq.com"); //1.一人一附件
//bool issend = MirosoftSmptHelper.SendEmaildu("geovindu@163.com", "中文文件名.net 4.0,geovindu 涂聚文塗聚文工團、", "<p> 生命運浪漫滿屋geovindu江蘇黃河</p><br/><p>上官放個屁,下官一台戲</p>", true,"馬拉松獎牌刻字.xlsx");
//2.一人多附件
//bool issend = MirosoftSmptHelper.SendEmailduFiles("geovindu@163.com", "中文文件名.net 4.0,geovindu 涂聚文塗聚文工團、", "<p> 生命運浪漫滿屋geovindu江蘇黃河</p><br/><p>上官放個屁,下官一台戲</p>", true, AttachmentFiles);
//3.多人多附件
bool issend = MirosoftSmptHelper.SendEmailsAndFiles(Tos, "中文文件名.net 4.0,geovindu 涂聚文塗聚文工團、", "<p> 生命運浪漫滿屋geovindu江蘇黃河</p><br/><p>上官放個屁,下官一台戲</p>", true, AttachmentFiles);
theMemStream.Close();
if (issend)
{
MessageBox.Show("ok");
}
else
{
MessageBox.Show("no");
}
}
不忘初心,方得始终;初心易得,始终难守。
/// <summary>
/// 多人多附件发送邮件
/// 不考虑统计每封邮件发送状态(另外考虑完善代码)
/// 2019-06-18 涂聚文 GeovinDu
/// 2019-07-01
/// </summary>
/// <param name="Tos">多人接收邮件人</param>
/// <param name="Subject">邮件标题</param>
/// <param name="Msg">邮件内容</param>
/// <param name="bodyHtml">是否網頁</param>
/// <param name="AttachmentFiles">多附件--具体文件地址</param>
/// <returns></returns>
public static bool SendEmailsAndFiles(List<string> Tos, string Subject, string Msg, bool bodyHtml, List<string> AttachmentFiles)
{
MemoryStream AttachmentStream = new MemoryStream();
bool SendOk = false;
List<Attachment> all = new List<Attachment>();
try
{
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (string filename in AttachmentFiles)
{
Attachment attachment = new Attachment(filename, MediaTypeNames.Application.Octet); // //AttachmentStream, filename
ContentDisposition disposition = attachment.ContentDisposition;
disposition.CreationDate = File.GetCreationTime(filename);
disposition.ModificationDate = File.GetLastWriteTime(filename);
disposition.ReadDate = File.GetLastAccessTime(filename);
disposition.FileName = Path.GetFileName(filename);
disposition.Size = new FileInfo(filename).Length;
disposition.DispositionType = DispositionTypeNames.Attachment;
all.Add(attachment); //new Attachment(AttachmentStream, filename)
}
}
if (Tos.Count > 0)
{ foreach (string To in Tos)
{
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], To, Subject, Msg);
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8;
System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false;
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (Attachment attname in all)
{ newMsg.Attachments.Add(attname); //MediaTypeNames.Image.Jpeg) }
}
newMsg.IsBodyHtml = bodyHtml;
smtpClient.Send(newMsg);
SendOk = true;
}
}
}
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
}
AttachmentStream.Close();
return SendOk;
} /// <summary>
/// 多人多附件发送邮件
/// 不考虑统计每封邮件发送状态(另外考虑完善代码)
/// 2019-07-01 涂聚文 GeovinDu
/// </summary>
/// <param name="Tos">多人接收邮件人</param>
/// <param name="Subject">邮件标题</param>
/// <param name="Msg">邮件内容</param>
/// <param name="bodyHtml">是否網頁</param>
/// <param name="AttachmentFiles">多附件--根据运行程序目录地址</param>
/// <returns></returns>
public static bool SendEmailsAndLocalFiles(List<string> Tos, string Subject, string Msg, bool bodyHtml, List<string> AttachmentFiles)
{
MemoryStream AttachmentStream = new MemoryStream();
bool SendOk = false;
List<Attachment> all = new List<Attachment>();
try
{
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (string filename in AttachmentFiles)
{
//具体的文件地址,用此法
//Attachment attachment = new Attachment(filename, MediaTypeNames.Application.Octet); // //AttachmentStream, filename
//ContentDisposition disposition = attachment.ContentDisposition;
//disposition.CreationDate = File.GetCreationTime(filename);
//disposition.ModificationDate = File.GetLastWriteTime(filename);
//disposition.ReadDate = File.GetLastAccessTime(filename);
//disposition.FileName = Path.GetFileName(filename);
//disposition.Size = new FileInfo(filename).Length;
//disposition.DispositionType = DispositionTypeNames.Attachment;
all.Add(new Attachment(AttachmentStream, filename));//在运行程序的目录的文件没有问题,可执行。如是不是此语言件地址,附件无效
}
}
if (Tos.Count > 0)
{ foreach (string To in Tos)
{
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], To, Subject, Msg);
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8;
System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false;
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (Attachment attname in all)
{
newMsg.Attachments.Add(attname); //MediaTypeNames.Image.Jpeg) }
}
newMsg.IsBodyHtml = bodyHtml;
smtpClient.Send(newMsg);
SendOk = true;
}
}
}
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
}
AttachmentStream.Close();
return SendOk;
}
/// <summary>
/// 20190702 多人邮件
/// geovindu 涂聚文
/// </summary>
/// <param name="Mails"></param>
/// <param name="Subject"></param>
/// <param name="Msg"></param>
/// <param name="bodyHtml"></param>
/// <param name="AttachmentFiles"></param>
/// <returns></returns>
public static bool SendEmailsFiles(List<MailAddress> Mails, string Subject, string Msg, bool bodyHtml, List<string> AttachmentFiles)
{
MemoryStream AttachmentStream = new MemoryStream();
bool SendOk = false;
List<Attachment> all = new List<Attachment>();
try
{
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (string filename in AttachmentFiles)
{
//具体的文件地址,用此法
Attachment attachment = new Attachment(filename, MediaTypeNames.Application.Octet); // //AttachmentStream, filename
ContentDisposition disposition = attachment.ContentDisposition;
disposition.CreationDate = File.GetCreationTime(filename);
disposition.ModificationDate = File.GetLastWriteTime(filename);
disposition.ReadDate = File.GetLastAccessTime(filename);
disposition.FileName = Path.GetFileName(filename);
disposition.Size = new FileInfo(filename).Length;
disposition.DispositionType = DispositionTypeNames.Attachment;
all.Add(attachment);//在运行程序的目录的文件没有问题,可执行。如是不是此语言件地址,附件无效
}
}
if (Mails.Count > 0)
{ int c = 1;
foreach (MailAddress ToAddress in Mails)
{ MailAddress from=new MailAddress(System.Configuration.ConfigurationManager.AppSettings["mailCfg"],System.Configuration.ConfigurationManager.AppSettings["displayName"]);
//from.DisplayName="";
// from.Address=;
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage();
newMsg.From = from;
newMsg.To.Add(ToAddress);
newMsg.Subject = Subject;
newMsg.Body = Msg;
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8;
System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false;
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (Attachment attname in all)
{
newMsg.Attachments.Add(attname); //MediaTypeNames.Image.Jpeg)
}
}
newMsg.IsBodyHtml = bodyHtml;
//smtpClient.Send(newMsg);
smtpClient.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
string userState = "test message:"+c.ToString();
smtpClient.SendAsync(newMsg, userState);
SendOk = true;
c++;
} }
}
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
}
AttachmentStream.Close();
return SendOk;
}
/// <summary>
/// 一人多附件
/// </summary>
/// <param name="Mails"></param>
/// <param name="Subject"></param>
/// <param name="Msg"></param>
/// <param name="bodyHtml"></param>
/// <param name="AttachmentFiles"></param>
/// <returns></returns>
public static bool SendEmailFiles(MailAddress Mails, string Subject, string Msg, bool bodyHtml, List<string> AttachmentFiles)
{
MemoryStream AttachmentStream = new MemoryStream();
bool SendOk = false;
List<Attachment> all = new List<Attachment>();
try
{
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (string filename in AttachmentFiles)
{
//具体的文件地址,用此法
Attachment attachment = new Attachment(filename, MediaTypeNames.Application.Octet); // //AttachmentStream, filename
ContentDisposition disposition = attachment.ContentDisposition;
disposition.CreationDate = File.GetCreationTime(filename);
disposition.ModificationDate = File.GetLastWriteTime(filename);
disposition.ReadDate = File.GetLastAccessTime(filename);
disposition.FileName = Path.GetFileName(filename);
disposition.Size = new FileInfo(filename).Length;
disposition.DispositionType = DispositionTypeNames.Attachment;
all.Add(attachment);//在运行程序的目录的文件没有问题,可执行。如是不是此语言件地址,附件无效
}
} MailAddress from = new MailAddress(System.Configuration.ConfigurationManager.AppSettings["mailCfg"], System.Configuration.ConfigurationManager.AppSettings["displayName"]);
//from.DisplayName="";
// from.Address=;
System.Net.Mail.MailMessage newMsg = new System.Net.Mail.MailMessage();
newMsg.From = from;
newMsg.To.Add(Mails);
newMsg.Subject = Subject;
newMsg.Body = Msg;
newMsg.BodyEncoding = System.Text.Encoding.UTF8;
newMsg.HeadersEncoding = System.Text.Encoding.UTF8;
newMsg.SubjectEncoding = System.Text.Encoding.UTF8;
System.Net.Mail.SmtpClient smtpClient = new System.Net.Mail.SmtpClient();
//smtpClient.Credentials = new NetworkCredential("geovindu@dusystem.com","888888");
//smtpClient.Port = 25;
//smtpClient.EnableSsl = false;
if (AttachmentStream != null && AttachmentFiles != null)
{
foreach (Attachment attname in all)
{
newMsg.Attachments.Add(attname); //MediaTypeNames.Image.Jpeg)
}
}
newMsg.IsBodyHtml = bodyHtml;
//smtpClient.Send(newMsg);
smtpClient.SendCompleted += new SendCompletedEventHandler(SendCompletedCallback);
string userState = "test message:发送中";
smtpClient.SendAsync(newMsg, userState);
SendOk = true; }
catch (Exception ex)
{
ex.Message.ToString();
AttachmentStream.Close();
SendOk = false;
}
AttachmentStream.Close();
return SendOk;
}
测试
List<MailAddress> mails = new List<MailAddress>();
MailAddress address = null;
address = new MailAddress("geovindu@163.com", "涂聚文", Encoding.UTF8);
mails.Add(address);
address = new MailAddress("geovindu@hotmail.com", "塗聚文", Encoding.UTF8);
mails.Add(address);
address = new MailAddress("463588883@qq.com", "捷為工作室", Encoding.UTF8);
mails.Add(address);
string strMessage = string.Empty;
string subject = string.Empty; subject=txtSubject.Text.Trim();
strMessage = htmlEditUserControl1.HtmlEditControl.DocumentText; //1.一人一附件
//bool issend = MirosoftSmptHelper.SendEmaildu("geovindu@163.com", "中文文件名.net 4.0,geovindu 涂聚文塗聚文工團、", "<p> 生命運浪漫滿屋geovindu江蘇黃河</p><br/><p>上官放個屁,下官一台戲</p>", true,"馬拉松獎牌刻字.xlsx");
//2.一人多附件
//bool issend = MirosoftSmptHelper.SendEmailduFiles("geovindu@163.com", "中文文件名.net 4.0,geovindu 涂聚文塗聚文工團、", "<p> 生命運浪漫滿屋geovindu江蘇黃河</p><br/><p>上官放個屁,下官一台戲</p>", true, AttachmentFiles);
//3.多人多附件
//bool issend = MirosoftSmptHelper.SendEmailsAndFiles(Tos, subject, strMessage, true, AttachmentFiles);
bool issend = MirosoftSmptHelper.SendEmailsFiles(mails, subject, strMessage, true, AttachmentFiles);
SMTP email from C#的更多相关文章
- gerrit 调试smtp email
- 使用Python调用SMTP服务自动发送Email
需求背景 假设我们想设计一个定时任务,比如每天定时的用python来测试服务是否在正常运行,但是又不希望每天登录到系统后台去查看服务状态.这里我们就可以采取python的smtp模块进行任务结果广播, ...
- maven小项目注册服务(一)--email和persist模块
跟着书里的讲解,跟着做了一遍该项目: 首先明白注册账户的需求: 账号的lD和Email地址都可以用来唯一地标识某个用户,而显示名称则用来显示在页面下,方便浏览.注册的时候用户还需要输入两次密码,以确保 ...
- 配置 SQL Server Email 发送以及 Job 的 Notification通知功能
配置 SQL Server Email 发送以及 Job 的 Notification通知功能 在与数据库相关的项目中, 比如像数据库维护, 性能警报, 程序出错警报或通知都会使用到在 SQL Ser ...
- 自学Zabbix3.10.1.1-事件通知Notifications upon events-媒介类型email
自学Zabbix3.10.1.1-事件通知Notifications upon events-媒介类型email 配置媒介Email Administration→Media types->Cl ...
- SMTP 通过 ssh 通道发送垃圾邮件
通过SSH隧道传输SMTP 根据设计,我们不允许校外机器使用我们的SMTP服务器.如果我们允许它,我们将允许任何和所有使用我们的SMTP服务器来分发垃圾邮件.但是也可以通过我们的SMTP服务器发送邮件 ...
- (44)zabbix报警媒介:email
报警信息将会使用系统自带的sendmail发送,配置比较简单 配置媒介Email Administration→Media types->Click on Create media type ...
- Aras Innovator如何配置SMTP中转Office365
参考文档:http://www.ebdadvisors.com/blog/2015/7/31/configure-an-smtp-server-in-windows-iis-for-aras-inno ...
- Daily Build
Daily Build 是一件非常有意义的事情,也是敏捷开发中关于 “持续集成” 的一个实践.Daily Build 对于开发来说有如下好处: 保证了每次 check in 的代码可用,不会造成整个工 ...
随机推荐
- Redis的面试问题总结,面试跳槽必备
1.什么是redis? Redis 是一个基于内存的高性能key-value数据库. 2.Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库 ...
- scrapy项目部署
什么是scrapyd Scrapyd是部署和运行Scrapy.spider的应用程序.它使您能够使用JSON API部署(上传)您的项目并控制其spider. 特点: 可以避免爬虫源码被看到. 有版本 ...
- Python执行系统命令的四种方法
一.os.system方法 在子终端运行系统命令,可以获取命令执行后的返回信息以及执行返回的状态.执行后返回两行结果,第一行是结果, 第二行是执行状态信息,如果命令成功执行,这条语句返回0,否则返回1 ...
- 使用最新AndroidStudio编写Android编程权威指南(第3版)中的代码会遇到的一些问题
Android编程权威指南(第3版)这本书是基于Android7.0的,到如今已经过于古老,最新的Android版本已经到10,而这本书的第四版目前还没有正式发售,在最近阅读这本书时,我发现这本书的部 ...
- xcode8 运行项目时自己打印些东西
使用 Xcode 8 运行工程的时候,在打印台会发现如下这些奇怪的日志输出: 2016-09-19 10:43:44.001757 Demo[7100:171568] subsystem: com.a ...
- 【华为云实战开发】9.如何进行PHP项目的快速搭建并实现CICD?【华为云技术分享】
1 概述 1.1 文章目的 本文主要想为研发PHP项目的企业或个人提供上云指导,通过本文中的示例项目 “workerman-todpole”,为开发者提供包括项目管理,代码托管,代码检查,编译构建,测 ...
- springcloud+kafka集群
上节说了kafka在linux环境下怎么搭建集群.这节写一下怎么在springcloud中以stream流方式去做kafka集群对接. 1.yml配置 #spring Cloud kafka -- s ...
- openstack网络(三)
openstack网络架构 Neutron中的基本网络元素 插件扩展功能 ML2Modular Layer 2 plugin Neutron架构图 参考资料 openstack网络架构 Neutron ...
- pip-get.py安装问题
问题: 安装完成和配置环境之后:输入一个测试命令:pip help 出现下面这个问题. Fatal error in launcher: Unable to create process using ...
- Spring代理模式(CGLIB动态代理模式)
jdk动态代理和CGLIB动态代理 没什么太大的区别,CGLIB动态代理不需要接口,但是需要导入jar包. 房东出租房子的方法: package com.bjsxt.proxy2; public cl ...