C# 发送邮件之QQ邮箱

        QQ邮箱大家基本是人手一个,但是如果需要在我们的代码中使用的话,需要做一下简单的设置。

设置如下:

  1. 进入QQ邮箱的设置页面,点击账户,然后将以下功能开启

    上面的帮助链接有兴趣的话也可以了解下
  2. 设置好之后可以点击生成授权码,这个授权码到时候就会作为我们程序的登录密码使用。
  3. 设置完成

实现功能:

使用QQ邮箱发送邮件

开发环境:

开发工具: Visual Studio 2013

.NET Framework版本:4.5

实现代码:

 /// <summary>
        /// 邮件发送
        /// </summary>
        /// <param name="sendAddr">发送邮箱地址</param>
        /// <param name="sendPwd">发送邮箱密码(qq邮箱授权码)</param>
        /// <param name="title">邮件标题</param>
        /// <param name="content">邮件内容</param>
        /// <param name="toAddr">发送到邮箱的地址</param>
        /// <param name="ccAddr">抄送邮箱的地址</param>
        /// <param name="host">SMTP 事务的主机的名称或 IP 地址</param>
        /// <param name="port">SMTP 事务的主机的端口</param>
        /// <returns></returns>
        static bool Send(string sendAddr, string sendPwd, string title, string content, List<string> toAddr, List<string> ccAddr, int port=25, string host = "smtp.qq.com")
        {
            try
            {
                MailMessage mail = new MailMessage();
                mail.From = new MailAddress(sendAddr);
                mail.Subject = title;
                mail.Body = content;
              //mail.IsBodyHtml = true;
                foreach (string s in toAddr)
                {
                    mail.To.Add(s);
                }
                foreach (string s in ccAddr)
                {
                    mail.CC.Add(s);
                }
                SmtpClient smtp = new SmtpClient(host, port);
                smtp.Credentials = new NetworkCredential(sendAddr, sendPwd);
                smtp.EnableSsl = true;
                smtp.Send(mail);
                return true;
            }
            catch
            {
                return false;
            }
        }
//然后这里直接调用即可
bool isSend = Send("邮箱账号", "授权码", "邮件标题", "邮件内容", new List<string> { "发送人" }, new List<string>());
            Console.WriteLine(isSend ? "发送成功" : "发送失败");
            Console.ReadKey();

//同时加入一个可以插入图片的方式,将上面的mail.IsBodyHtml = true;解注
//然后这里提一下,放到服务器使用的时候,建议使用SSL,587端口,即
 string imgData = "<br/><DIV><IMG src=\"data:image/ png;base64,"+base64+"\"></IMG></DIV>";
Send("邮箱账号", "授权码", "邮件标题", "邮件内容", new List<string> { "发送人" }, new List<string>(),587);

由简入繁,拿来即用

更多精彩,请搜索公众号:Csharp 小记

  • 3
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值