C#基础:通过QQ邮件发送验证码到指定邮箱

一、控制台程序

cs 复制代码
using System;
using System.Net;
using System.Net.Mail;

public class EmailSender
{
    public void SendEmail(string toAddress, string subject, string body)
    {
        // 设置发件人邮箱地址以及授权码
        string fromAddress = "xxxxx@qq.com";
        string password = "wxxxxxdgtdzhecjb";

        // 创建邮件消息对象
        MailMessage mail = new MailMessage();
        mail.From = new MailAddress(fromAddress);
        mail.To.Add(new MailAddress(toAddress));
        mail.Subject = subject;
        mail.Body = body;

        // 创建SMTP客户端对象,设置SMTP服务器和端口号(这里不用改)
        SmtpClient smtpClient = new SmtpClient("smtp.qq.com", 587);
        smtpClient.UseDefaultCredentials = false;
        smtpClient.Credentials = new NetworkCredential(fromAddress, password);
        smtpClient.EnableSsl = true;

        try
        {
            // 发送邮件
            smtpClient.Send(mail);
            Console.WriteLine("邮件发送成功!");
        }
        catch (Exception ex)
        {
            Console.WriteLine("发送邮件时出现错误: " + ex.Message);
        }
    }
}
public class Test
{
    static int Main(string[] args)
    {
        EmailSender emailSender = new EmailSender();
        emailSender.SendEmail("yyyyyyy@qq.com", "测试邮件", "这是一封测试邮件");//发送地址、邮箱标题、邮箱内容
        return 0;
    }
}

二、注册授权码

申请授权码:

第一步,登录QQ邮箱,点击设置-账号-找到下图位置点击开启服务

第二步,按照步骤指引,发送短信

第三步,记住授权码(后续无法查看授权码,但是可以生成多个授权码,不该邮箱密码不会过期)

相关推荐
会开花的二叉树12 小时前
C++微服务 UserServer 设计与实现
开发语言·c++·微服务
像风一样自由202012 小时前
Rust Tokio vs Go net/http:云原生与嵌入式生态选型指南
开发语言·golang·rust
DuHz12 小时前
C程序中的数组与指针共生关系
linux·c语言·开发语言·嵌入式硬件·算法
我星期八休息12 小时前
C++智能指针全面解析:原理、使用场景与最佳实践
java·大数据·开发语言·jvm·c++·人工智能·python
大猫会长12 小时前
docker安装php+apache
java·开发语言
道之极万物灭13 小时前
Go小工具合集
开发语言·后端·golang
梵得儿SHI13 小时前
Java 反射机制深度剖析:性能与安全性的那些坑
java·开发语言·安全·反射·动态代理·性能·反射机制
fsnine13 小时前
Python图形化界面——pyqt5教程
开发语言·python·qt
嵌入式-老费13 小时前
Easyx图形库应用(和lua结合使用)
开发语言·lua
AsiaLYF13 小时前
kotlin中MutableStateFlow和MutableSharedFlow的区别是什么?
android·开发语言·kotlin