C# QQ & 163 邮件发送
这篇文章的目的并不是说明如果进行右键的发送,因为在.net 坝坝的怀抱下邮件发送的功能实现并不会很难,当然邮件发送的代码,还是会贴上的,昨天在写一个邮件发送的功能,我直接找到了原来的代码,想着直接就可以运行了,但是真正情况并非如此,遇到了很多报错,这里做个说明。
测试中出现了如下的报错:
163
1.不允许使用邮箱名称。 服务器响应为:authentication is required,163 smtp14,EsCowACHqdDTBdBay0PiEw--.39304S3 1523582420
2.邮箱不可用。 服务器响应为:User has no permission
3.事务失败。 服务器响应为:DT:SPM 163 smtp13,EcCowAAHf28_ENBawarsDQ--.43148S3 1523585089,please see http://mail.163.com/help/help_spam_16.htm?ip=xx.xx.xx.xx&hostid=smtp13&time=1523585089
通过QQ发邮件基本没有什么大的问题,可以成功,当然这一切的大的问题都是由于现在的qq和163都开始使用授权码,what? 什么意思了,意思就是原来通过邮箱帐号,密码然后发送右键的方式用不了了,所以这也就是为什么我原先的代码用不了。
如果开启所谓的授权码呢?
163:

163现在开启POP3/SMTP服务的时候已经做了说明,如上“请使用授权码登录第三方右键客户端”

如上开启授权码即可,请牢记自己的授权码
QQ:

如上,qq的smtp服务开启与获取授权码
下面开始贴发送的代码:
public class EmalHelper
{
/// <summary>
/// SMTP实例
/// </summary>
static System.Net.Mail.SmtpClient client = null; /// <summary>
/// 发送信息
/// </summary>
/// <param name="Receiver">邮件接收人</param>
/// <param name="Subject">邮件主题</param>
/// <param name="content">邮件内容</param>
public static void SendEmail(string Receiver, string Subject, string content)
{
if (string.IsNullOrEmpty(Receiver) || string.IsNullOrEmpty(Subject)
|| string.IsNullOrEmpty(content))
{
throw new ArgumentNullException("SendEmail参数空异常!");
}
if (client == null)
{
try
{
//163发送配置
client = new System.Net.Mail.SmtpClient();
client.Host = "smtp.163.com";
client.Port = ;
client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
client.EnableSsl = true;
client.UseDefaultCredentials = true; //qq发送配置的参数//切EnableSsl必须设置为true
//client = new System.Net.Mail.SmtpClient();
//client.Host = "smtp.qq.com";
//client.Port = 25;
//client.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
//client.EnableSsl = true;
//client.UseDefaultCredentials = false; client.Credentials = new System.Net.NetworkCredential("邮箱帐号@xx.com", "授权码");
}
catch (Exception ex)
{
throw ex;
}
}
try
{
System.Net.Mail.MailMessage Message = new System.Net.Mail.MailMessage();
Message.SubjectEncoding = System.Text.Encoding.UTF8;
Message.BodyEncoding = System.Text.Encoding.UTF8;
Message.Priority = System.Net.Mail.MailPriority.High; Message.From = new System.Net.Mail.MailAddress("邮箱帐号@xx.com", "张三");
//添加邮件接收人地址
string[] receivers = Receiver.Split(new char[] { ',' });
Array.ForEach(receivers.ToArray(), ToMail => { Message.To.Add(ToMail); }); Message.Subject = Subject;
Message.Body = content;
Message.IsBodyHtml = true;
client.Send(Message);
}
catch (Exception ex)
{
throw ex;
}
}
}
上面的邮箱帐号正常输入,后面必须填写授权码,否则就会提示, 不允许使用邮箱名称。 服务器响应为:authentication is required,163 smtp13,EcCowACXmXrVFtBa20jvDQ--.25857S3 1523586773
如果用户没有开启授权码,还是原先的用户密码的方式,邮箱不可用。 服务器响应为:User has no permission
服务器响应为:DT:SPM 163 smtp13,EcCowAAHf28_ENBawarsDQ--.43148S3 1523585089,please see http://mail.163.com/help/help_spam_16.htm?ip=xx.xx.xx.xx&hostid=smtp13&time=1523585089 这是第三个错误,因为邮件被拦截导致,你的右键标题和内容要正规,我做了个测试 右键的标题为 “title” 报错,改为“工作汇报”,邮件发送成功,而且这个错误还跟天气有关,开个玩笑,有时候就是莫名其妙的出现,一会就好了
C# QQ & 163 邮件发送的更多相关文章
- javamail发送邮件,支持yahoo,google,163.com,qq.com邮件发送
https://www.iteye.com/blog/fangyunfeng-1847352 https://blog.csdn.net/weixin_38465623/article/details ...
- asp.net 163邮件发送
<table id="> <tr> <td style="width: 393px"> 收信:<asp:TextBox ID=. ...
- Selenium+Python之163邮件发送
今晚写了一个163邮箱登录的脚本,由于不停的访问163登录主页导致直接访问163邮箱主页登录需要输入验证码,因为无法获取到验证码,就这导致直接访问主页登录脚本不可行,为了绕过验证码,现在先访问hao1 ...
- 技术笔记:Indy IdSMTP支持腾讯QQ邮箱邮件发送
1.腾讯QQ邮箱的授权码问题 因为腾讯邮箱折腾了个底朝天,其要搞什么授权码登录第三方客户端,否则会报这个错误: 'Error: 请使用授权码登录.详情请看: http://service.mail.q ...
- TP5实现邮件发送(PHP 利用QQ邮箱发送邮件「PHPMailer」)
在 PHP 应用开发中,往往需要验证用户邮箱.发送消息通知,而使用 PHP 内置的 mail() 函数,则需要邮件系统的支持. 如果熟悉 IMAP/SMTP 协议,结合 Socket 功能就可以编写邮 ...
- C# 如何实现邮件发送
调用发送 try { P2BEmail email = new P2BEmail(); email.fromEmail = txtfromEmail.Text; // QQ邮箱 email.fromP ...
- Django之邮件发送
settings.py #settings 添加如下配置进行邮件发送 #邮件服务器 EMAIL_HOST = "smtp.qq.com" #邮件发送的端口 EMAIL_PORT = ...
- php使用CI发送qq和163邮件
1.需求 发送邮件 2.介绍 使用CI框架的email类库发送邮件,这里演示QQ和163 3.163使用教程 a.先去163邮件开启smtp邮件. b.在CI的控制器里写下面的代码 $this-> ...
- java邮件发送 qq与163邮箱互发和qq和163邮箱发送其他邮箱实例
研究了近一天的时间,通过查阅相关资料,终于对java发送邮件的机制,原理有了一点点的理解,希望能够帮到大家! 1.首先要向你的项目里导入1个jar包:mail-1.4.4.jar即可(实现qq和163 ...
随机推荐
- jar包和war包的介绍与区别
在学习maven的过程中接触到了jar包和war包.之前在写小项目的时候真的遇到过war包,当时为了找到jar包,把war包 的后缀名改成了.rar的压缩文件,在里面提取出来jar包来用.其实jar包 ...
- 笔记:Spring Cloud Eureka 服务治理
Spring Cloud Eureka 是 Spring Cloud Netflix 微服务套件的一部分,基于 Netflix Eureka 做了二次封装,主要负责完成微服务架构中的服务治理功能,服务 ...
- thinkphp5 taglib自定义标签教程
学着写了一下,终于搞定了,顺便分享一下!taglib是tp框架自定义标签功能,如果你用过cms,肯定见过类似: {dede:arclist typeid='' row='' col='' titlel ...
- python函数知识点(详解匿名函数)
Python函数是组织好的.单一的.具有独立功能模块的代码块. 函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print().但你也可以自己创建函数,这被叫做用户自定 ...
- 深入理解Android中View
文章目录 [隐藏] 一.View是什么? 二.View创建的一个概述: 三.View的标志(Flag)系统 四.MeasureSpec 五.几个重要方法简介 5.1 onFinishInflate ...
- selenium2自动化测试学习笔记(四)
今天是学习selenium2第四天.总结下今天的学习成果,自动登录网易邮箱并写信发送邮件. 知识点or坑点: 1.模块化编写测试模块(类似java里的抽象方法,js的函数编写) from 包名 imp ...
- python替换残缺的多域名图片网址
在获取网站真是图片的时候,经常遇到图片链接残缺问题. 例如下图所示的情况: img标签中的图片链接是残缺的,如果这个网站域名又是多种情况的话,比如 http://sports.online.sh.cn ...
- Windows 安装nginx并开机启动
Win安装nginx并 开机启动 下载nginx安装包 nginx-1.12.2.zip,解压到D盘. https://pan.baidu.com/s/1InQa527yq35Q68c73RBb-A# ...
- windows环境下,apache虚拟主机配置
在windows环境下,apache从配置文件的相关配置: Windows 是市场占有率最高的 PC 操作系统, 也是很多人的开发环境. 其 VirtualHost 配置方法与 Linux 上有些差异 ...
- 上海依图-电话面试-angularjs
树的遍历(树结构:node.name,node.children),输出node.name(递归) 指令的scope的绑定策略(@绑定DOM数学单向绑定:=双向数据绑定:&绑定父作用域函数) ...