亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C# > 正文

C#通用郵件發送類分享

2020-01-24 01:49:19
字體:
來源:轉載
供稿:網友

此類的功能包括發送郵件,郵箱格式是否正確,和在不發送郵件的情況下判斷郵箱用戶名和密碼是否正確,鑒于POP檢查郵箱用戶名和密碼出現錯誤情況返回結果的延遲,用異步線程解決此問題,見代碼:

using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Net.Mail;using System.Web;using System.Net;using System.Text.RegularExpressions;using System.Net.Sockets;using System.IO;using System.Collections;using System.Threading;namespace Com.Web{  /// <summary>  /// 郵箱類  /// </summary>  public class CheckEmailInfo  {    public string server { get; set; }//服務器    public string user { get; set; }//用戶名    public string pwd { get; set; }//密碼  }  /// <summary>  /// SendEmail通用類,通過smtp服務器發送郵件  /// </summary>  public class SendEmail  {    public Dictionary<string, string> smtpServer;    public Dictionary<string, string> popServer;    public SendEmail()    {           IniSmtpServer();      IniPopServer();    }    /// <summary>    /// 初始化常用smtpServer,用于綁定下拉選擇菜單    /// </summary>    private void IniSmtpServer()    {      smtpServer = new Dictionary<string, string>();      smtpServer.Add("網易163郵箱", "smtp.163.com");      smtpServer.Add("網易vip.163郵箱", "smtp.vip.163.com");      smtpServer.Add("網易126郵箱", "smtp.126.com");      smtpServer.Add("網易188郵箱", "smtp.188.com");      smtpServer.Add("新浪郵箱", "smtp.sina.com");      smtpServer.Add("雅虎郵箱", "smtp.mail.yahoo.com");      smtpServer.Add("搜狐郵箱", "smtp.sohu.com");      smtpServer.Add("TOM郵箱", "smtp.tom.com");      smtpServer.Add("Gmail郵箱", "smtp.gmail.com");      smtpServer.Add("QQ郵箱", "smtp.qq.com");      smtpServer.Add("QQ企業郵箱", "smtp.biz.mail.qq.com");      smtpServer.Add("139郵箱", "smtp.139.com");      smtpServer.Add("263郵箱", "smtp.263.com");          }    /// <summary>    /// 初始化常用popServer,用于綁定下拉選擇菜單    /// </summary>    private void IniPopServer()    {      popServer = new Dictionary<string, string>();      popServer.Add("網易163郵箱", "pop3.163.com");      popServer.Add("網易vip.163郵箱", "pop3.vip.163.com");      popServer.Add("網易126郵箱", "pop3.126.com");      popServer.Add("網易188郵箱", "pop3.188.com");      popServer.Add("新浪郵箱", "pop3.sina.com");      popServer.Add("雅虎郵箱", "pop3.mail.yahoo.com");      popServer.Add("搜狐郵箱", "pop3.sohu.com");      popServer.Add("TOM郵箱", "pop.tom.com");      popServer.Add("Gmail郵箱", "pop.gmail.com");      popServer.Add("QQ郵箱", "pop.qq.com");      popServer.Add("QQ企業郵箱", "pop.biz.mail.qq.com");      popServer.Add("139郵箱", "pop.139.com");      popServer.Add("263郵箱", "pop.263.com");    }    /// <summary>    /// 發送郵件功能    /// </summary>    /// <param name="fromEmail">登錄郵箱</param>    /// <param name="password">登錄密碼</param>    /// <param name="user">郵件昵稱</param>    /// <param name="title">郵件標題</param>    /// <param name="toEmail">郵件地址</param>    /// <param name="email">郵件內容</param>    /// <param name="smtpServer">smtp服務器</param>    public bool SendMessage(string fromEmail,string password, string user, string title, string toEmail, string email,string smtpServer)    {      try      {               SmtpClient smtp = new SmtpClient(); //實例化一個SmtpClient        smtp.DeliveryMethod = SmtpDeliveryMethod.Network; //將smtp的出站方式設為 Network        smtp.EnableSsl = false;//smtp服務器是否啟用SSL加密        smtp.Host = smtpServer;//指定 smtp 服務器                  smtp.Credentials = new NetworkCredential(fromEmail, password);        MailMessage mm = new MailMessage(); //實例化一個郵件類        mm.Priority = MailPriority.High; //郵件的優先級,分為 Low, Normal, High,通常用 Normal即可               mm.From = new MailAddress(fromEmail, user, Encoding.GetEncoding(936));        mm.CC.Add(new MailAddress(toEmail, "", Encoding.GetEncoding(936)));        mm.Subject = title; //郵件標題        mm.SubjectEncoding = Encoding.GetEncoding(936);        mm.IsBodyHtml = true; //郵件正文是否是HTML格式mm.BodyEncoding = Encoding.GetEncoding(936);        mm.Body = email;        smtp.Send(mm);        return true;           }      catch      {        return false;      }    }    /// <summary>    /// 檢查郵箱是否正確的委托    /// </summary>    delegate bool MyDelegate(object checkEmailInfo);    /// <summary>    /// 利用異步方式檢查郵箱賬號和密碼是否正確    /// </summary>    public bool CheckUser(string server, string user, string pwd)    {            MyDelegate myDelegate = new MyDelegate(CheckUser);      CheckEmailInfo checkEmailInfo = new CheckEmailInfo();      checkEmailInfo.server = server;      checkEmailInfo.user = user;      checkEmailInfo.pwd = pwd;      IAsyncResult result = myDelegate.BeginInvoke(checkEmailInfo, null, null);      Thread.Sleep(1000);//主線程1秒后檢查異步線程是否運行完畢      if (result.IsCompleted)      { return myDelegate.EndInvoke(result); }//如果錯誤的郵箱和密碼,函數將會運行很慢      else      { return false; }    }       /// <summary>    /// 判斷用戶郵箱賬號和密碼是否正確    /// </summary>    /// <param name="server">PopServer地址</param>    /// <param name="user">用戶名</param>    /// <param name="pwd">密碼</param>    private bool CheckUser(object checkEmailInfo)    {           CheckEmailInfo checkInfo = (CheckEmailInfo)checkEmailInfo;      TcpClient sender = new TcpClient(checkInfo.server, 110);//pop協議使用TCP的110端口      Byte[] outbytes;      NetworkStream ns;      StreamReader sr;      string input;      string readuser = string.Empty;      string readpwd = string.Empty;      try      {        ns = sender.GetStream();        sr = new StreamReader(ns);        sr.ReadLine();        //檢查用戶名和密碼        input = "user " + checkInfo.user+ "/r/n";        outbytes = Encoding.ASCII.GetBytes(input.ToCharArray());        ns.Write(outbytes, 0, outbytes.Length);               readuser = sr.ReadLine();        input = "pass " + checkInfo.pwd + "/r/n";        outbytes =Encoding.ASCII.GetBytes(input.ToCharArray());        ns.Write(outbytes, 0, outbytes.Length);              readpwd = sr.ReadLine();                      if (readuser.Substring(0, 3) == "+OK" && readpwd.Substring(0, 3) == "+OK")        { return true; }        else        { return false; }      }      catch      {        return false;      }    }        /// <summary>    /// 判斷郵箱格式是否正確    /// </summary>    /// <param name="email">郵箱地址</param>    public bool IsEmail(string email)    {       string paterner = @"/w+([-+.']/w+)*@/w+([-.]/w+)*/./w+([-.]/w+)*";      if (!Regex.IsMatch(email, paterner))      { return false;}      else      {return true;}         }   }}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产精品久久久久免费a∨| 日本最新高清不卡中文字幕| 欧美另类高清videos| 日韩网站免费观看| 国产精品色视频| 热久久视久久精品18亚洲精品| 欧美又大粗又爽又黄大片视频| 亚洲一区二区久久久| 日韩欧美在线网址| 欧美第一淫aaasss性| 亚洲午夜未满十八勿入免费观看全集| 国产69精品久久久久9999| 国产91精品黑色丝袜高跟鞋| 在线播放国产一区中文字幕剧情欧美| 国产成人亚洲精品| 欧美丰满片xxx777| 成人在线视频网站| 欧美资源在线观看| 欧美视频13p| 性色av一区二区咪爱| 欧美日韩免费在线| 国产亚洲精品久久久久久777| 成人黄色在线播放| 欧美国产亚洲视频| 97久久精品人人澡人人爽缅北| 亚洲影影院av| 久久99热精品| 三级精品视频久久久久| 国产成人在线播放| 久久精品美女视频网站| 8050国产精品久久久久久| 日韩hd视频在线观看| 久久久亚洲影院你懂的| 韩国精品久久久999| 超在线视频97| 在线视频日韩精品| 久久色免费在线视频| 亚洲第一页中文字幕| 日韩成人在线视频观看| 成人欧美一区二区三区在线湿哒哒| 久久久欧美精品| 国产精品日日摸夜夜添夜夜av| 国产自摸综合网| 国产一区二区在线免费| 欧美激情一区二区久久久| 亚洲视频自拍偷拍| 国产精品久久电影观看| 国产精品主播视频| 欧美日韩综合视频网址| 日韩福利在线播放| 欧美性猛交xxxx免费看| 亚洲国产精品va在线| 欧美视频中文在线看| 欧美成人免费大片| 亚洲色图综合网| 4444欧美成人kkkk| 国产精品久久电影观看| 日韩精品中文字幕在线| 日本久久久久久| 51精品在线观看| 亚洲系列中文字幕| 欧美成人sm免费视频| 午夜剧场成人观在线视频免费观看| 人人爽久久涩噜噜噜网站| 国产亚洲精品综合一区91| 国产精品久久久久久网站| 国产欧美日韩91| 国产精品网站入口| 日韩电影视频免费| 国产成人啪精品视频免费网| 欧美日韩激情视频8区| 精品国产91久久久| 在线视频欧美日韩| 国产福利视频一区二区| 日韩成人在线电影网| 亚洲第一中文字幕| 欧美又大又粗又长| 国产成人久久久| 国产精品自拍偷拍| 日韩精品福利在线| 久久久久国产一区二区三区| 久久久影视精品| 国产精品激情av电影在线观看| 亚洲电影免费观看| 色吧影院999| 精品国产一区二区三区久久久狼| 91精品国产综合久久男男| 最近中文字幕2019免费| 中文字幕少妇一区二区三区| 精品国产91久久久久久| 欧美日韩中文在线观看| 欧美有码在线观看视频| 欧美成人免费观看| 欧美色视频日本高清在线观看| 成人av在线网址| 国产精品丝袜一区二区三区| 成人黄色av免费在线观看| 欧美大成色www永久网站婷| 欧美性xxxxxxxxx| 国产精品福利久久久| 国产精品看片资源| 九九热这里只有在线精品视| 最近2019年手机中文字幕| 欧美裸体视频网站| 亚洲综合一区二区不卡| 成人性生交大片免费看视频直播| 亚洲最大在线视频| 最近2019免费中文字幕视频三| 亚洲国产精品va在线| 久久这里只有精品视频首页| 欧美日韩人人澡狠狠躁视频| 精品视频在线播放| 久久人人看视频| 国产亚洲精品久久久久久牛牛| 亚洲少妇中文在线| www亚洲精品| 2019国产精品自在线拍国产不卡| 欧美成人精品在线播放| 国产精品久久中文| 成人国产精品一区二区| 欧美高清视频在线观看| 成人有码在线视频| 91黑丝高跟在线| 日韩不卡在线观看| 亚洲人成在线播放| 亚洲在线观看视频网站| 欧美亚洲另类在线| 国产亚洲aⅴaaaaaa毛片| 久久久国产视频| 538国产精品视频一区二区| 国产成人一区二区三区电影| 在线a欧美视频| 国产精品丝袜视频| 成人免费在线网址| 亚洲欧美激情在线视频| 欧美激情视频一区| 伊人久久久久久久久久久久久| 日韩福利视频在线观看| 国产精品一香蕉国产线看观看| 亚洲视频日韩精品| 92看片淫黄大片欧美看国产片| 亚洲自拍偷拍福利| 精品magnet| 久久综合久久美利坚合众国| 亚洲午夜久久久影院| 欧美精品电影在线| 一色桃子一区二区| 国产一区在线播放| 日本久久久久久久久| 亚洲精品黄网在线观看| 亚洲视频在线观看网站| 亚洲成人久久久久| 亚洲综合色激情五月| 久久99久国产精品黄毛片入口| 国产一区二区成人| 日韩精品丝袜在线| 亚洲成人在线网| 久久精品成人欧美大片古装| 日韩乱码在线视频| 国产亚洲精品美女久久久| 国自在线精品视频| 国产suv精品一区二区| 亚洲国产日韩欧美综合久久| 国产亚洲美女精品久久久|