/// <summary>
/// 发送单封邮件
/// </summary>
/// <param name="MailToAddress"></param>
public void SendOneEmail(string MailToAddress)
{
string MailFromAddress=txtEmail.Text;
string MailTitle=txtEmailTitle.Text;
string MailContent=txtEmailContent.Text;
string MailSmtpServer=textBoxsmtp.Text;
int TempMailServer=MailFromAddress.IndexOf("@",0);
string MailUserName=MailFromAddress.Substring(0,TempMailServer);
string MailPassword=txtPassword.Text;
//string MailDdomain=MailFromAddress.Substring((TempMailServer+1),(MailFromAddress.Length-TempMailServer-1));
try
{
//实例化MailMessage对象
System.Web.Mail.MailMessage mail=new System.Web.Mail.MailMessage();
//定义邮件的发送地址
mail.From=MailFromAddress;
//定义邮件的接收地址
//设置以分号分隔的收件人电子邮件地址列表
mail.To=MailToAddress;
//定义邮件的主题
mail.Subject=MailTitle;
//设置电子邮件正文的内容类型
//在这里我们以HTML的格式发送
mail.BodyFormat=System.Web.Mail.MailFormat.Html;
//设置电子邮件的正文
mail.Body=MailContent;
//SMTP服务器
//许多SMTP服务器都需要身份验证
System.Web.Mail.SmtpMail.SmtpServer=MailSmtpServer;
//验证
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//登陆名
mail.Fields.Add("<A href="http://schemas.microsoft.com/cdo/configuration/sendusername",MailUserName">http://schemas.microsoft.com/cdo/configuration/sendusername",MailUserName);
//登陆密码
mail.Fields.Add("<A href="http://schemas.microsoft.com/cdo/configuration/sendpassword",MailPassword">http://schemas.microsoft.com/cdo/configuration/sendpassword",MailPassword);
//发送
System.Web.Mail.SmtpMail.Send(mail);
listBox2.Items.Add(MailToAddress);
txtSCount.Text=listBox2.Items.Count.ToString();
string strEmailSuccessFileName=Application.StartupPath+"//EmailSuccess.txt";
if (File.Exists(strEmailSuccessFileName))
{
StreamWriter strwriterobj=File.AppendText(strEmailSuccessFileName);
strwriterobj.WriteLine(MailToAddress);
strwriterobj.Close();
}
else
{
StreamWriter strwriterobj=File.CreateText(strEmailSuccessFileName);
strwriterobj.WriteLine(MailToAddress);
strwriterobj.Close();
}
}
catch(Exception ee)
{
listBox3.Items.Add(MailToAddress);
txtFCount.Text=listBox3.Items.Count.ToString();
txtFReport.Text=MailToAddress + "邮件发送失败" +ee.ToString();
string strEmailFailed=MailToAddress;
string strEmailFailedFileName=Application.StartupPath+"//EmailFailed.txt";
if (File.Exists(strEmailFailedFileName))
{
StreamWriter strwriterobj=File.AppendText(strEmailFailedFileName);
strwriterobj.WriteLine(strEmailFailed);
strwriterobj.Close();
}
else
{
StreamWriter strwriterobj=File.CreateText(strEmailFailedFileName);
strwriterobj.WriteLine(strEmailFailed);
strwriterobj.Close();
}
}
txtFinish.Text=(int.Parse(txtFinish.Text)+1).ToString();
}
/// <summary>
/// 密送邮件
/// </summary>
/// <param name="MailToAddress"></param>
/// <param name="MailBccAddress"></param>
private void SendTwoEmail(string MailToAddress,string MailBccAddress)
{
string MailFromAddress=txtEmail.Text;
string MailTitle=txtEmailTitle.Text;
string MailContent=txtEmailContent.Text;
string MailSmtpServer=textBoxsmtp.Text;
int TempMailServer=MailFromAddress.IndexOf("@",0);
string MailUserName=MailFromAddress.Substring(0,TempMailServer).Trim();
string MailPassword=txtPassword.Text.Trim();
//string MailDdomain=MailFromAddress.Substring((TempMailServer+1),(MailFromAddress.Length-TempMailServer-1));
try
{
//实例化MailMessage对象
System.Web.Mail.MailMessage mail=new System.Web.Mail.MailMessage();
//定义邮件的发送地址
mail.From=MailFromAddress;
//定义邮件的接收地址
//设置以分号分隔的收件人电子邮件地址列表
mail.To=MailToAddress;
//定义邮件的主题
mail.Subject=MailTitle;
//设置电子邮件正文的内容类型
//在这里我们以HTML的格式发送
mail.BodyFormat=System.Web.Mail.MailFormat.Html;
//设置电子邮件的正文
mail.Body=MailContent;
//mail.BodyEncoding.EncodingName.
//定义邮件的暗送地址
//设置以分号分隔的电子邮件地址列表
mail.Bcc=MailBccAddress;
//定义邮件的抄送地址 .抄送会显示在收件人列表中
//设置以分号分隔的电子邮件地址列表
//mail.Cc="xqf222@hotmail.com";
//SMTP服务器
//许多SMTP服务器都需要身份验证
System.Web.Mail.SmtpMail.SmtpServer=MailSmtpServer;
//验证
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
//登陆名
mail.Fields.Add("<A href="http://schemas.microsoft.com/cdo/configuration/sendusername",MailUserName">http://schemas.microsoft.com/cdo/configuration/sendusername",MailUserName);
//登陆密码
mail.Fields.Add("<A href="http://schemas.microsoft.com/cdo/configuration/sendpassword",MailPassword">http://schemas.microsoft.com/cdo/configuration/sendpassword",MailPassword);
//发送
System.Web.Mail.SmtpMail.Send(mail);
listBox2.Items.Add(MailToAddress);
listBox2.Items.Add(MailBccAddress);
txtSCount.Text=listBox2.Items.Count.ToString();
string strEmailSuccessFileName=Application.StartupPath+"//EmailSuccess.txt";
if (File.Exists(strEmailSuccessFileName))
{
StreamWriter strwriterobj=File.AppendText(strEmailSuccessFileName);
strwriterobj.WriteLine(MailToAddress);
strwriterobj.WriteLine(MailBccAddress);
strwriterobj.Close();
}
else
{
StreamWriter strwriterobj=File.CreateText(strEmailSuccessFileName);
strwriterobj.WriteLine(MailToAddress);
strwriterobj.WriteLine(MailBccAddress);
strwriterobj.Close();
}
}
catch(Exception ee)
{
listBox3.Items.Add(MailToAddress);
listBox3.Items.Add(MailBccAddress);
txtFCount.Text=listBox3.Items.Count.ToString();
txtFReport.Text= "邮件发送失败地址:" +"/r/n"+ MailToAddress+"/r/n" +MailBccAddress+ "/r/n" +ee.ToString();
string strEmailFailedFileName=Application.StartupPath+"//EmailFailed.txt";
if (File.Exists(strEmailFailedFileName))
{
StreamWriter strwriterobj=File.AppendText(strEmailFailedFileName);
strwriterobj.WriteLine(MailToAddress);
strwriterobj.WriteLine(MailBccAddress);
strwriterobj.Close();
}
else
{
StreamWriter strwriterobj=File.CreateText(strEmailFailedFileName);
strwriterobj.WriteLine(MailToAddress);
strwriterobj.WriteLine(MailBccAddress);
strwriterobj.Close();
}
}
txtFinish.Text=(int.Parse(txtFinish.Text)+1).ToString();
}
分享到:
相关推荐
在C#编程环境中,控制台应用程序常常用于执行自动化任务,如批量发送邮件。这个特定的项目,"C# 控制台 批量发送邮件",是利用C#语言编写的一个控制台应用,其核心功能是实现批量发送电子邮件。开发者已经提供了一个...
通过上述内容,我们可以看到,使用C#发送邮件涉及到了.NET框架的邮件处理机制、SMTP协议以及安全性问题。在实际项目中,根据需求可以进行相应的扩展和优化,如添加日志记录、邮件模板、批量发送等功能。希望这个C#...
通过上述分析,我们可以看到C#中自动发送邮件功能的实现涉及到了多个方面的技术点,包括邮件地址的处理、邮件内容的设置、邮件附件的支持以及SMTP服务器的配置等。这些功能的实现使得开发人员能够轻松地集成邮件发送...
通过以上步骤,我们可以实现一个C#程序,它能从Excel文件中读取邮箱和数据,然后批量发送个性化的邮件。在实际项目中,你可能还需要考虑日志记录、邮件发送状态跟踪等更复杂的需求,以确保邮件发送的可靠性和可维护...
本程序结合了图像处理和网络通信两个核心领域,通过使用Windows API进行屏幕捕获,并利用SMTP协议发送邮件。以下是关于这个主题的详细知识: 1. **C#基础**: C#是一种面向对象的编程语言,由微软公司开发,广泛...
3. 创建转换函数:定义两个函数,一个用于MSG转EML,另一个用于EML转MSG。例如: ```csharp public static void MSGToEML(string inputFilePath, string outputFilePath) { MapiMessage msg = MapiMessage.FromFile...
在C#中,发送邮件主要依赖于System.Net.Mail命名空间,它提供了SmtpClient和MailMessage两个关键类。SmtpClient类负责处理SMTP(Simple Mail Transfer Protocol)协议,而MailMessage类则用来构建邮件消息。 首先,...
C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#邮件发送系统C#...
本程序" C#大数据批量插入Access程序 "就是针对这种需求而设计的,它允许开发者高效地将大量数据导入到Access数据库中。 Access数据库虽然在处理大规模数据时可能不如SQL Server等大型数据库系统强大,但在某些场景...
本项目"**c#邮件发送小程序**"是利用C#实现的一个实用工具,其核心功能是通过SMTP(Simple Mail Transfer Protocol)服务来发送电子邮件。SMTP是互联网上用于在邮件服务器之间传输邮件的标准协议。 在C#中发送邮件...
2.发送邮件的发件箱,需要启动SMTP服务,各邮件的服务器的SMTP启用方式,请参照邮件服务商的说明。这里只简单介绍QQ邮件的设置方式。 设置----'账号---'POP3/IMAP/SMTP/Excahange/CardDav/CalDAV服务。勾选POP1/SMTP...
标题 "C# 邮箱自动发送邮件程序" 指示我们要实现的功能是利用C#编写一个程序,该程序能够自动向指定的收件人发送电子邮件。这个程序可以是单对单发送,也可以实现群发,这涉及到循环遍历收件人列表并发送邮件的逻辑...
在C#编程环境中,开发一个控制台应用程序来发送邮件是一个常见的任务,特别是在自动化或系统集成的场景中。本文将深入探讨如何使用C#通过SMTP(Simple Mail Transfer Protocol)服务发送邮件,结合控制台应用程序...
首先,让我们来看看如何使用C#发送邮件。这通常涉及以下步骤: 1. 创建MailMessage对象,设置发件人、收件人、主题和邮件正文: ```csharp MailMessage message = new MailMessage(); message.From = new ...
本篇文章将深入探讨如何使用C#来创建一个电子邮件发送程序,这是一项常见的任务,对于任何需要与用户进行电子通信的应用都是必不可少的。通过理解和掌握这个知识点,开发者能够构建出高效且可靠的邮件系统。 邮件...
通过这份源码,开发者可以学习到如何在C#环境下构建一个邮件发送系统,包括设置邮件服务器、配置SMTP协议、处理邮件附件以及实现批量发送等核心知识点。 首先,邮件发送的核心是SMTP(Simple Mail Transfer ...
本资源提供了一个完整的C#.NET发送邮件的DEMO,适用于Visual Studio 2008,且包含了多种邮件服务提供商的配置示例,如搜狐、雅虎、新浪、163、126和QQ等,这使得开发者能够快速理解和应用到实际项目中。 首先,我们...
"C#批量修改数据库" 在C#编写数据库程序时,逐条修改效率低,本文通过整合数据后批次写入数据库,提高了数据处理效率。 标题解释 该标题"C#批量修改数据库"表明本文的主要内容是使用C#语言对数据库进行批量修改...
在这个C#程序中,我们将探讨如何在C#环境中实现高斯函数,并理解其背后的数学原理。 高斯函数,通常表示为f(x) = (1 / (σ * √(2π))) * e^(-(x - μ)^2 / (2σ^2)),是一个连续概率分布,其中μ是平均值,σ是...
C#邮件自动发送程序是基于.NET Framework开发的一种实用工具,主要利用C#语言的强大功能,结合Visual Studio 2008开发环境,实现通过SMTP(Simple Mail Transfer Protocol)协议发送电子邮件的功能。本项目源代码...