当前位置: 首页 > news >正文

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

一、控制台程序

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邮箱,点击设置-账号-找到下图位置点击开启服务

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

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

相关文章:

  • 运动的解析:从机械运动到自由落体,探索物体运动的基本规律与数学描述
  • php基础学习之代码框架
  • 【JavaEE Spring】SpringBoot 日志
  • python-分享篇-爱心
  • 【Java】HttpServlet类简单方法和请求显示
  • 什么是OSPF?为什么需要OSPF?OSPF基础概念
  • USRP相关报错解决办法
  • 为什么 macOS 比 Windows 稳定?
  • TDengine启动和连接问题
  • uniapp嵌套webview,无法返回上一级?
  • MySQL死锁场景与应对方案
  • 51单片机中断
  • java大数据hadoop2.9.2 Linux安装mariadb和hive
  • Baichuan2百川模型部署的bug汇总
  • OpenCV-Python(49):图像去噪
  • 【刷算法】从上往下打印二叉树
  • ES6系统学习----从Apollo Client看解构赋值
  • Joomla 2.x, 3.x useful code cheatsheet
  • JS进阶 - JS 、JS-Web-API与DOM、BOM
  • LeetCode18.四数之和 JavaScript
  • LeetCode29.两数相除 JavaScript
  • Promise面试题2实现异步串行执行
  • Vue全家桶实现一个Web App
  • 不用申请服务号就可以开发微信支付/支付宝/QQ钱包支付!附:直接可用的代码+demo...
  • 分享几个不错的工具
  • 个人博客开发系列:评论功能之GitHub账号OAuth授权
  • 目录与文件属性:编写ls
  • 排序(1):冒泡排序
  • 巧用 TypeScript (一)
  • 使用Swoole加速Laravel(正式环境中)
  • 使用权重正则化较少模型过拟合
  • 写给高年级小学生看的《Bash 指南》
  • 一、python与pycharm的安装
  • 一个完整Java Web项目背后的密码
  • ​水经微图Web1.5.0版即将上线
  • #在 README.md 中生成项目目录结构
  • $L^p$ 调和函数恒为零
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (非本人原创)史记·柴静列传(r4笔记第65天)
  • (附源码)spring boot公选课在线选课系统 毕业设计 142011
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (转)一些感悟
  • .NET C# 使用 SetWindowsHookEx 监听鼠标或键盘消息以及此方法的坑
  • .NET CORE Aws S3 使用
  • .net core 连接数据库,通过数据库生成Modell
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .NET Standard、.NET Framework 、.NET Core三者的关系与区别?
  • .net websocket 获取http登录的用户_如何解密浏览器的登录密码?获取浏览器内用户信息?...
  • .net 程序 换成 java,NET程序员如何转行为J2EE之java基础上(9)
  • @column注解_MyBatis注解开发 -MyBatis(15)
  • [].slice.call()将类数组转化为真正的数组