使用C#通过GMAIL发送邮件.
2013-04-23 09:46
591 查看
Mail.cs usingSystem; usingSystem.Collections.Generic; usingSystem.Text; usingSystem.Net.Mail; usingSystem.Net; usinglog4net; usingSystem.Configuration; namespaceMasterSoft.WinUI { ///<summary> ///发邮件模块 ///Author:tonyepaper.cnblogs.com ///</summary> publicclassMail { privatestringsenderAddress; ///<summary> ///发件人 ///</summary> publicstringSenderAddress { get{returnsenderAddress;} set{senderAddress=value;} } privatestringreceiverAddess; ///<summary> ///收件人 ///</summary> publicstringReceiverAddess { get{returnreceiverAddess;} set{receiverAddess=value;} } privatestringsubject; ///<summary> ///主题 ///</summary> publicstringSubject { get{returnsubject;} set{subject=value;} } privatestringbody; ///<summary> ///内容 ///</summary> publicstringBody { get{returnbody;} set{body=value;} } privatestringsmtpHost; ///<summary> ///SMTP主机 ///</summary> publicstringSmtpHost { get{returnsmtpHost;} set{smtpHost=value;} } privateintsmtpPort; ///<summary> ///SMTP端口 ///</summary> publicintSmtpPort { get{returnsmtpPort;} set{smtpPort=value;} } privatestringsmtpPassword; ///<summary> ///SMTP密码 ///</summary> publicstringPassword { get{returnsmtpPassword;} set{this.smtpPassword=value;} } ///<summary> ///从配置文件中读出SMTP相关信息 ///</summary> publicMail() { senderAddress=ConfigurationManager.AppSettings["SmtpUser"]; smtpPassword=ConfigurationManager.AppSettings["SmtpPassword"]; smtpHost=ConfigurationManager.AppSettings["SmtpHost"]; smtpPort=Int32.Parse(ConfigurationManager.AppSettings["SmtpPort"]); } ///<summary> ///邮件 ///</summary> ///<paramname="receiverAddess">收件人地址</param> ///<paramname="subject">主题</param> ///<paramname="body">内容</param> publicMail(stringreceiverAddess,stringsubject,stringbody):this() { this.receiverAddess=receiverAddess; this.subject=subject; this.body=body; } ///<summary> ///发送邮件 ///</summary> publicboolSend() { MailMessagemailMessage=newMailMessage(senderAddress,receiverAddess); mailMessage.Subject=subject; mailMessage.Body=body; SmtpClientsmtpClient=newSmtpClient(smtpHost,smtpPort); //使用SSL加密连线 smtpClient.EnableSsl=true; NetworkCredentialnetworkCredential=newNetworkCredential(senderAddress,smtpPassword); smtpClient.Credentials=networkCredential; try { smtpClient.Send(mailMessage); returntrue; } catch(Exceptionex) { returnfalse; } } } }
App.config
<?xmlversion="1.0"encoding="utf-8"?>
<configuration>
<appSettings>
<addkey="SmtpHost"value="smtp.gmail.com"/>
<addkey="SmtpPort"value="587"/>
<addkey="SmtpUser"value="tonyxxx@gmail.com"/>
<addkey="SmtpPassword"value="*******"/>
</appSettings>
</configuration>
另一种用法:
usingSystem;
usingSystem.ComponentModel;
usingSystem.Net;
usingSystem.Net.Mail;
usingSystem.Text;
usingSystem.Windows.Forms;
namespaceMyMail
{
publicpartialclassForm1:Form
{
publicForm1()
{
InitializeComponent();
}
privatevoidbutton1_Click_1(objectsender,EventArgse)
{
//MailMessageSetting
stringfromEmail="XXX@gmail.com";
stringfromName="C.H.Huang";
MailAddressfrom=newMailAddress(fromEmail,fromName,Encoding.UTF8);
stringtoEmail="YYY@gmail.com";
MailMessagemail=newMailMessage(from,newMailAddress(toEmail));
stringsubject="TestSubject";
mail.Subject=subject;
mail.SubjectEncoding=Encoding.UTF8;
stringbody="TestBody";
mail.Body=body;
mail.BodyEncoding=Encoding.UTF8;
mail.IsBodyHtml=false;
mail.Priority=MailPriority.High;
//SMTPSetting
SmtpClientclient=newSmtpClient();
client.Host="smtp.gmail.com";
client.Port=587;
client.Credentials=newNetworkCredential("username@gmail.com","password");
client.EnableSsl=true;
//SendMail
client.SendAsync(mail,mail);
//SentCompeletedEevet
client.SendCompleted+=newSendCompletedEventHandler(client_SendCompleted);
}
//HandleSentCompeletedEevet
privatevoidclient_SendCompleted(objectsender,AsyncCompletedEventArgse)
{
if(e.Error!=null)
{
MessageBox.Show(e.Error.ToString());
}
else
{
MessageBox.Show("Messagesent.");
}
}
}
}
相关文章推荐
- 使用C#通过GMAIL发送邮件.
- c#编程指南(七) C#通过GMAIL发送邮件
- 使用indy 9发送邮件支持SSL选项,gmail测试通过
- python - 如何通过GMail发送邮件:smtplib的使用
- 通过phpmailer使用gmail账号发送邮件了【转】
- python使用smtplib模块通过gmail实现邮件发送的方法
- phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法
- C#使用gmail发送邮件
- 装饰者模式的学习(c#) EF SaveChanges() 报错(转载) C# 四舍五入 保留两位小数(转载) DataGridView样式生成器使用说明 MSSQL如何将查询结果拼接成字符串 快递查询 C# 通过smtp直接发送邮件 C# 带参访问接口,WebClient方式 C# 发送手机短信 文件 日志 写入 与读取
- 【C#使用Gmail发送邮件源代码分享】
- python使用smtplib模块通过gmail实现邮件发送的方法
- phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法
- c#编程指南(八) 异步C#通过GMAIL发送邮件
- C#发送邮件(使用Gmail或自己配置的SMTP)
- python - 如何通过GMail发送邮件:smtplib的使用
- 使用CakePHP自带Email组件通过gmail发送邮件
- 使用phantomjs实现highcharts等报表通过邮件发送(本文仅提供完整解决方案和实现思路,完全照搬不去整理代码无法马上得到效果)
- Android 使用 Gmail 来发送邮件
- 使用支持Pop3的邮箱给好友群发邮件. C# .Net 2.0 邮件发送 + XML 读取操作代码.
- openssl使用SMTP向gmail发送邮件