C#中收发QQ邮箱电子邮件

1.安装第三方库MailKit

复制代码
#.NET Coredotnet add package MailKit --version 2.5.1
#.NET FrameworkInstall-Package MailKit -Version 2.5.1

2.1发送代码

复制代码
try{    MimeMessage message = new MimeMessage();    message.From.Add(new MailboxAddress("备注", "xxx@qq.com"));//发送邮箱    message.To.Add(new MailboxAddress("备注", "xxx@163.com"));//接收邮箱    message.Subject = "邮件测试标题";//标题    BodyBuilder bodyBuilder = new BodyBuilder();    bodyBuilder.TextBody = "邮件测试正文";    message.Body = bodyBuilder.ToMessageBody();
    //创建SMTP客户端    using (SmtpClient client = new SmtpClient())    {        client.ServerCertificateValidationCallback = (s, c, h, e) => true;        client.Connect("smtp.qq.com", 465, true);//smtp服务器,端口,是否开启ssl        client.Authenticate("xxx@qq.com", "password");//这里的password填授权码        client.Send(message);        client.Disconnect(true);    }}catch (Exception ex){    Console.WriteLine("发送邮件失败:" + ex.Message);}

2.2接收代码

复制代码
try{    //创建IMAP客户端    using (ImapClient client = new ImapClient())    {        client.Connect("imap.qq.com", 993, true);//imap服务器,端口,是否开启ssl        client.Authenticate("xxx@qq.com", "password");//这里的password填授权码        // 打开收件箱        var inbox = client.Inbox;        inbox.Open(FolderAccess.ReadOnly);//只读        // 获取收件箱中的邮件数量        Console.WriteLine("收件箱中共有 {0} 封邮件", inbox.Count);        // 遍历收件箱中的邮件并输出主题        for (int i = 0; i < inbox.Count; i++)        {            var message = inbox.GetMessage(i);            Console.WriteLine("邮件主题:{0}", message.Subject);        }        client.Disconnect(true);    }}catch (Exception ex){    Console.WriteLine("接收邮件失败:" + ex.Message);}

注意:

用户名/帐户: 你的QQ邮箱完整的地址

密码: 生成的授权码

电子邮件地址: 你的QQ邮箱的完整邮件地址

接收邮件服务器: imap.qq.com,使用SSL,端口号993

发送邮件服务器: smtp.qq.com,使用SSL,端口号465或587

获取授权码:

1.登录邮箱

2.【账号与安全】

3.【安全设置-生成授权码】

相关推荐
瑞克-桑切斯3 小时前
企业生产环境:https部署+nginx高可用(业务不中断)
linux·服务器·数据库
java1234_小锋6 小时前
【技术专题】HTML5 网页技术 - HTML5 Canvas 基础以及动画入门
前端·html·html5
czhc11400756636 小时前
同值短路与单一真值源:属性不是命令,状态只有一个家
c#
知了学历孙老师9 小时前
小自考的校考和统考,出题方和难度差在哪
java·大数据·前端
浩浩测试一下10 小时前
Linux 底层知识点 1
linux·运维·服务器
Eloudy10 小时前
全文 - IMEX 第01节 -IMEX overview
运维·服务器·网络
Escalating_xu10 小时前
【Linux 网络编程】TCP 跨平台实战:用 Windows 客户端访问 Linux 服务器
linux·服务器·网络
发量惊人的中年网工10 小时前
分公司访问总部ERP慢怎么办?SD-WAN组网的排查与验收要点
服务器·开发语言·php
下页、再停留11 小时前
【C#桌面客户端系列学习-15】生成可视化图表之折线图、柱状图、饼状图
开发语言·c#
翼龙云_cloud11 小时前
亚马逊云服务器服务代理商:Bedrock 实践经验 Serverless 架构下的 AI 自动化落地
服务器·架构·serverless·云计算·aws