.net密码找回
using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Mail;
using System.IO;
/// <summary>
/// sendEmail 的摘要说明
/// </summary>
public static class sendEmail
{
static sendEmail()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
/// <summary>
/// 发送邮件程序
/// </summary>
/// <param name="from">发送人邮件地址</param>
/// <param name="fromname">发送人显示名称</param>
/// <param name="to">发送给谁(邮件地址)</param>
/// <param name="subject">标题</param>
/// <param name="body">内容</param>
/// <param name="username">邮件登录名</param>
/// <param name="password">邮件密码</param>
/// <param name="server">邮件服务器 smtp服务器地址</param>
/// <param name="fujian">附件</param>
/// <returns>send ok</returns>
/// 调用方法 SendMail("abc@126.com", "某某人", "cba@126.com", "你好", "我测试下邮件", "邮箱登录名", "邮箱密码", "smtp.126.com", "");
///
public static string SendMail(string from, string fromname, string to, string subject, string body, string username, string password, string server, string fujian)
{
try
{
//邮件发送类
MailMessage mail = new MailMessage();
//是谁发送的邮件
mail.From = new MailAddress(from, fromname);
//发送给谁
mail.To.Add(to);
//标题
mail.Subject = subject;
//内容编码
mail.BodyEncoding = Encoding.Default;
//发送优先级
mail.Priority = MailPriority.High;
//邮件内容
mail.Body = body;
//是否HTML形式发送
mail.IsBodyHtml = true;
//附件
if (fujian.Length > 0)
{
mail.Attachments.Add(new Attachment(fujian));
}
//邮件服务器和端口
SmtpClient smtp = new SmtpClient(server, 25);
smtp.UseDefaultCredentials = true;
//指定发送方式
smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
//指定登录名和密码
smtp.Credentials = new System.Net.NetworkCredential(username, password);
//mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1"); //basic authentication
//mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", username); //set your username here
//mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", password); //set your password here
//超时时间
smtp.EnableSsl = false;
smtp.Timeout = 10000;
smtp.Send(mail);
return "成功发送请注意查收";
}
catch (Exception exp)
{
return exp.Message;
}
}
//读取指定URL地址的HTML,用来以后发送网页用
public static string ScreenScrapeHtml(string url)
{
//读取stream并且对于中文页面防止乱码
StreamReader reader = new StreamReader(System.Net.WebRequest.Create(url).GetResponse().GetResponseStream(), System.Text.Encoding.UTF8);
string str = reader.ReadToEnd();
reader.Close();
return str;
}
/// <summary>
/// 发送邮件
/// </summary>
/// <param name= "server "> smtp地址 </param>
/// <param name= "username "> 用户名 </param>
/// <param name= "password "> 密码 </param>
/// <param name= "from "> 发信人地址 </param>
/// <param name= "to "> 收信人地址 </param>
/// <param name= "subject "> 邮件标题 </param>
/// <param name= "body "> 邮件正文 </param>
/// <param name= "IsHtml "> 是否是HTML格式的邮件 </param>
public static string SendMail(string from, string to, string subject, string body, string server, string username, string password, bool IsHtml)
{
try
{
//设置SMTP 验证,端口默认为25,如果需要其他请修改
SmtpClient mailClient = new SmtpClient(server, 25);
//指定如何发送电子邮件。
//Network 电子邮件通过网络发送到 SMTP 服务器。
//PickupDirectoryFromIis 将电子邮件复制到挑选目录,然后通过本地 Internet 信息服务 (IIS) 传送。
//SpecifiedPickupDirectory 将电子邮件复制到 SmtpClient.PickupDirectoryLocation 属性指定的目录,然后由外部应用程序传送。
mailClient.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
//创建邮件对象
MailMessage mailMessage = new MailMessage(from, to, subject, body);
//定义邮件正文,主题的编码方式
mailMessage.BodyEncoding = System.Text.Encoding.GetEncoding("gb2312");
mailMessage.SubjectEncoding = System.Text.Encoding.GetEncoding("gb2312");
//mailMessage.BodyEncoding = Encoding.Default;
//获取或者设置一个值,该值表示电子邮件正文是否为HTML
mailMessage.IsBodyHtml = IsHtml;
//指定邮件的优先级
mailMessage.Priority = MailPriority.High;
//发件人身份验证,否则163 发不了
//表示当前登陆用户的默认凭据进行身份验证,并且包含用户名密码
mailClient.UseDefaultCredentials = true;
mailClient.Credentials = new System.Net.NetworkCredential(username, password);
//发送
mailClient.Send(mailMessage);
return "发送成功";
}
catch (Exception exp)
{
return exp.Message;
}
}
//发送plaintxt
public static void SendText(string from, string to, string subject, string body, string server, string username, string password)
{
SendMail(from, to, subject, body, server, username, password, false);
}
//发送HTML内容
public static string SendHtml(string from, string to, string subject, string body, string server, string username, string password)
{
return SendMail(from, to, subject, body, server, username, password, true);
}
//发送制定网页
public static string SendWebUrl(string from, string to, string subject, string server, string username, string password, string url)
{
//发送制定网页
return SendHtml(from, to, subject, ScreenScrapeHtml(url), server, username, password);
}
}
后台调用示例:
Response.Write("发送附件:"+sendEmail.SendMail("shaxiaozier@sohu.com", "某某人", "hou@sina.com", "你好", "我测试下邮件", "shaxiaozier@sohu.com", "*********", "smtp.sohu.com", Server.MapPath("~/fujian/wap.doc")));
Response.Write("电子邮件正文是HTML格式:" + sendEmail.SendMail("shaxiaozier@sohu.com", "hou@sina.com", "主题", "正文<br/>又一行", "smtp.sohu.com", "shaxiaozier", "*********", false));
Response.Write("电子邮件正文非HTML格式:" + sendEmail.SendMail("shaxiaozier@sohu.com", "hou@sina.com", "主题", "正文<br/>又一行", "smtp.sohu.com", "shaxiaozier", "*********", true));
Response.Write("发送制定网页:"+sendEmail.SendWebUrl("shaxiaozier@sohu.com", "hou@sina.com", "zhuti", "smtp.sohu.com", "shaxiaozier", "*********", "http://www.baidu.com"));
原文链接:http://blog.csdn.net/mypc2010/article/details/7836961
.net密码找回的更多相关文章
- linux忘记mysql密码找回方法
linux忘记mysql教程密码找回方法 今天我们主要是讲一下关于linux忘记mysql密码处理方法,下面提供了5种linux忘记mysql密码找回方法哦. 方法一: # /etc/init. ...
- (转)asp.net实现忘记密码找回的代码
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or ...
- C# Email邮件发送,功能是密码找回或者重置功能。
原文:C# Email邮件发送,功能是密码找回或者重置功能. 最近根据公司需求,写个邮件发送. 这里面的传入的地址信息的参数都是经过加密的. 主要是保证用户信息的安全. 帮助类 using ...
- discuz密码找回:[1]忘记UCENTER创始人密码
人们都是健忘的,何况每天的事情很多,有些站长更是兼职做,赚点外快而已,而ucenter更是不常用,所以忘记密码是在正常不过的事情,如果密码忘记怎么找回呢?方法有很多种,例如用comsenz tools ...
- Linux系统初学-第一课 虚拟机安装CentOS6.5以及Root密码找回
Linux系统初学第一课 虚拟机安装CentOS6.5以及Root密码找回 虚拟机安装CentOS6.5 一.安装虚拟机 1-1.安装虚拟机VMware Station,新建虚拟机,选择典型配置. 1 ...
- WordPress忘记密码找回登录密码的四种行之有效的方法
WordPress忘记密码找回登录密码的四种行之有效的方法 PS:20170214更新,感谢SuperDoge同学提供的方法,登入phpMyAdmin后,先从左边选自己的数据库,然后点上面的 SQL ...
- python开发mysql:mysql安装(windows)&密码找回&存储引擎简介&库表的增删改查
一,mysql安装 下载地址 https://dev.mysql.com/downloads/file/?id=471342 解压后,将目录C:\mysql-5.7.19-winx64\bin添加到计 ...
- 轻松搭建CAS 5.x系列(5)-增加密码找回和密码修改功能
概述说明 CAS内置了密码找回和密码修改的功能: 密码找回功能是,系统会吧密码重置的连接通过邮件或短信方式发送给用户,用户点击链接后就可以重置密码,cas还支持预留密码重置的问题,只有回答对了,才可以 ...
- Mysql数据库忘记密码找回方法
Mysql数据库忘记密码找回 a 停止mysql服务 /etc/init.d/mysql stop b 使用--skip-grant-tables启动mysql,忽略授权登录验证 mysqld_saf ...
- MySQL root密码找回
以MySQL多实例为例,演示找回MySQL root的密码 1.关闭mysql服务 [root@mysql ~]# mysqladmin -uroot -poldboy123 -S /data/330 ...
随机推荐
- jquery提供的数据提交方式1
1,ajax提交,部分代码为easyui function editNode(id){ $.ajax({ dataType:'json', async:true, //默认的就是异步提交 type:' ...
- 从 .NET Framework到 .NET Core
参考资料: https://docs.microsoft.com/zh-cn/dotnet/core/porting/ https://docs.microsoft.com/zh-cn/aspnet/ ...
- Clean Code之JavaScript代码示例
译者按: 简洁的代码可以避免写出过多的BUG. 原文: JavaScript Clean Code - Best Practices 译者: Fundebug 本文采用意译,版权归原作者所有 引文 作 ...
- 消息队列RabbitMQ、缓存数据库Redis
1.RabbitMQ消息队列 1.1 RabbitMQ简介 AMQP,即Advanced Message Queuing Protocol,高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中 ...
- PJzhang:英国通信总部GCHQ开源产品-网络瑞士军刀CyberChef
猫宁!!! 参考链接:https://www.4hou.com/info/news/981.html 这个产品免费开源易用,如果称之为网络瑞士军刀,没什么异议. github地址:https://gi ...
- EIGRP-2-EIGRP的度量
EIGRP使用多种类型的度量值来描述一条路由的不同技术属性,称为组合度量或度量组合.这些组合度量参数包括带宽.延迟.可靠性.负载.MTU和跳数.这6个参数中的前4个通过一个著名的公式组合在一起,计算出 ...
- jsonignore的一个坑
import org.fasterxml.jackson.annotate.JsonIgnore; 和 import org.codehaus.jackson.annotate.JsonIgnore; ...
- POJ 2318 TOYS 利用叉积判断点在线段的那一侧
题意:给定n(<=5000)条线段,把一个矩阵分成了n+1分了,有m个玩具,放在为位置是(x,y).现在要问第几个位置上有多少个玩具. 思路:叉积,线段p1p2,记玩具为p0,那么如果(p1p2 ...
- VMWare复制虚拟机系统后,模块“Disk”无法启动【转】
1.找到虚拟机所在的目录 将 .vmx文件打开 将文件vmci0.present = "TRUE" 改为 vmci0.present = "FALSE" 2.删 ...
- SQL Server 脚本跟踪
1.查询 DataBasesID select db_id('regdatas') 2.获取进程ID 3.过滤定位