亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? smtpclass.cs

?? smtp收郵件
?? CS
?? 第 1 頁 / 共 2 頁
字號:
using System;
using System.IO;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Collections;
using System.Collections.Specialized  ;
namespace devApp.Mail
{
    class smtpClass
    {

 /// <summary>
 /// 郵件內容
 /// </summary>
 public class MailMessage
 {
  private string sender=null;
     private System.Collections.Specialized.StringDictionary receivers = new System.Collections.Specialized.StringDictionary();
  private string subject="";
  private string xMailer="";
     private System.Collections.Specialized.StringDictionary attachments = new System.Collections.Specialized.StringDictionary();
  private MailEncodings mailEncoding=MailEncodings.GB2312;
  private MailTypes mailType=MailTypes.Html;
  private byte[] mailBody=null;
  /// <summary>
  /// 獲取或設置發件人
  /// </summary>
  public string Sender
  {
   get{return this.sender;}
   set{this.sender=value;}
  }
  /// <summary>
  /// 獲取收件人地址集合
  /// </summary>
     public System.Collections.Specialized.StringDictionary Receivers
  {
   get{return this.receivers;}
  }
  /// <summary>
  /// 獲取或設置郵件主題
  /// </summary>
  public string Subject
  {
   get{return this.subject;}
   set{this.subject=value;}
  }
  /// <summary>
  /// 獲取或設置郵件傳送者
  /// </summary>
  public string XMailer
  {
   get{return this.xMailer;}
   set{this.xMailer=value;}
  }
  /// <summary>
  /// 獲取附件列表
  /// </summary>
     public System.Collections.Specialized.StringDictionary Attachments
  {
   get{return this.attachments;}
  }
  /// <summary>
  /// 獲取或設置郵件的編碼方式
  /// </summary>
  public MailEncodings MailEncoding
  {
   get{return this.mailEncoding;}
   set{this.mailEncoding=value;}
  }
  /// <summary>
  /// 獲取或設置郵件格式
  /// </summary>
  public MailTypes MailType
  {
   get{return this.mailType;}
   set{this.mailType=value;}
  }
  /// <summary>
  /// 獲取或設置郵件正文
  /// </summary>
  public byte[] MailBody
  {
   get{return this.mailBody;}
   set{this.mailBody=value;}
  }
 }
 /// <summary>
 /// 郵件編碼
 /// </summary>
 public enum MailEncodings
 {
  GB2312,
  ASCII,
  Unicode,
  UTF8
 }
 /// <summary>
 /// 郵件格式
 /// </summary>
 public enum MailTypes
 {
  Html,
  Text
 }
 /// <summary>
 /// smtp服務器的驗證方式
 /// </summary>
 public enum SmtpValidateTypes
 {
  /// <summary>
  /// 不需要驗證
  /// </summary>
  None,
  /// <summary>
  /// 通用的auth login驗證
  /// </summary>
  Login,
  /// <summary>
  /// 通用的auth plain驗證
  /// </summary>
  Plain,
  /// <summary>
  /// CRAM-MD5驗證
  /// </summary>
  CRAMMD5
 }
 /// <summary>
 /// 郵件發送類
 /// </summary>
 public class KSN_Smtp
 {
  #region "member fields"
  /// <summary>
  /// 連接對象
  /// </summary>
  private TcpClient tc;
  /// <summary>
  /// 網絡流
  /// </summary>
  private NetworkStream ns;
  /// <summary>
  /// 錯誤的代碼字典
  /// </summary>
  private StringDictionary errorCodes=new StringDictionary();
  /// <summary>
  /// 操作執行成功后的響應代碼字典
  /// </summary>
  private StringDictionary rightCodes=new StringDictionary();
  /// <summary>
  /// 執行過程中錯誤的消息
  /// </summary>
  private string errorMessage="";
  /// <summary>
  /// 記錄操作日志
  /// </summary>
  private string logs="";
  /// <summary>
  /// 主機登陸的驗證方式
  /// </summary>
     private System.Collections.Specialized.StringDictionary validateTypes = new System.Collections.Specialized.StringDictionary();
  /// <summary>
  /// 換行常數
  /// </summary>
  private const string CRLF="\\r\\n";
  private string serverName="smtp";
  private string logPath=null;
  private string userid=null;
  private string password=null;
  private string mailEncodingName="GB2312";
  private bool sendIsComplete=false;
  private SmtpValidateTypes smtpValidateType=SmtpValidateTypes.Login;
  #endregion
  #region "propertys"
  /// <summary>
  /// 獲取最后一此程序執行中的錯誤消息
  /// </summary>
  public string ErrorMessage
  {
   get{return this.errorMessage;}
  }
  /// <summary>
  /// 獲取或設置日志輸出路徑
  /// </summary>
  public string LogPath
  {
   get
   {
    return this.logPath;
   }
   set{this.logPath=value;}
  }
  /// <summary>
  /// 獲取或設置登陸smtp服務器的帳號
  /// </summary>
  public string UserID
  {
   get{return this.userid;}
   set{this.userid=value;}
  }
  /// <summary>
  /// 獲取或設置登陸smtp服務器的密碼
  /// </summary>
  public string Password
  {
   get{return this.password;}
   set{this.password=value;}
  }
  /// <summary>
  /// 獲取或設置要使用登陸Smtp服務器的驗證方式
  /// </summary>
  public SmtpValidateTypes SmtpValidateType
  {
   get{return this.smtpValidateType;}
   set{this.smtpValidateType=value;}
  }
  #endregion
  #region "construct functions"
  /// <summary>
  /// 構造函數
  /// </summary>
  /// <param name="server">主機名</param>
  /// <param name="port">端口</param>
  public  KSN_Smtp(string server,int port)
  {
   tc=new TcpClient(server,port);
   ns=tc.GetStream();
   this.serverName=server;
   this.initialFields();
  }
  /// <summary>
  /// 構造函數
  /// </summary>
  /// <param name="ip">主機ip</param>
  /// <param name="port">端口</param>
  public KSN_Smtp(IPAddress ip,int port)
  {
   IPEndPoint endPoint=new IPEndPoint(ip,port);
   tc=new TcpClient(endPoint);
   ns=tc.GetStream();
   this.serverName=ip.ToString();
   this.initialFields();
  }
  #endregion
  #region "methods"
  private void initialFields() //初始化連接
  {
   logs="================"+DateTime.Now.ToLongDateString()+"    "+DateTime.Now.ToLongTimeString()+"==============="+CRLF;
   //*****************************************************************
   //錯誤的狀態碼
   //*****************************************************************
   errorCodes.Add("421","服務未就緒,關閉傳輸通道");
   errorCodes.Add("432","需要一個密碼轉換");
   errorCodes.Add("450","要求的郵件操作未完成,郵箱不可用(如:郵箱忙)");
   errorCodes.Add("451","放棄要求的操作,要求的操作未執行");
   errorCodes.Add("452","系統存儲不足,要求的操作未完成");
   errorCodes.Add("454","臨時的認證失敗");
   errorCodes.Add("500","郵箱地址錯誤");
   errorCodes.Add("501","參數格式錯誤");
   errorCodes.Add("502","命令不可實現");
   errorCodes.Add("503","命令的次序不正確");
   errorCodes.Add("504","命令參數不可實現");
   errorCodes.Add("530","需要認證");
   errorCodes.Add("534","認證機制過于簡單");
   errorCodes.Add("538","當前請求的認證機制需要加密");
   errorCodes.Add("550","當前的郵件操作未完成,郵箱不可用(如:郵箱未找到或郵箱不能用)");
   errorCodes.Add("551","用戶非本地,請嘗試<forward-path>");
   errorCodes.Add("552","過量的存儲分配,制定的操作未完成");
   errorCodes.Add("553","郵箱名不可用,如:郵箱地址的格式錯誤");
   errorCodes.Add("554","傳送失敗");
   errorCodes.Add("535","用戶身份驗證失敗");
   //****************************************************************
   //操作執行成功后的狀態碼
   //****************************************************************
   rightCodes.Add("220","服務就緒");
   rightCodes.Add("221","服務關閉傳輸通道");
   rightCodes.Add("235","驗證成功");
   rightCodes.Add("250","要求的郵件操作完成");
   rightCodes.Add("251","非本地用戶,將轉發向<forward-path>");
   rightCodes.Add("334","服務器響應驗證Base64字符串");
   rightCodes.Add("354","開始郵件輸入,以<CRLF>.<CRLF>結束");
   //讀取系統回應
   StreamReader reader=new StreamReader(ns);
   logs+=reader.ReadLine()+CRLF;
  }
  /// <summary>
  /// 向SMTP發送命令
  /// </summary>
  /// <param name="cmd"></param>
  private string sendCommand(string cmd,bool isMailData)
  {
   if(cmd!=null && cmd.Trim()!=string.Empty)
   {
    byte[] cmd_b=null;
    if(!isMailData)//不是郵件數據
     cmd+=CRLF;
    logs+=cmd;
    //開始寫入郵件數據
    if(!isMailData)
    {
     cmd_b=Encoding.ASCII.GetBytes(cmd);
     ns.Write(cmd_b,0,cmd_b.Length);
    }
    else
    {
     cmd_b=Encoding.GetEncoding(this.mailEncodingName).GetBytes(cmd);
     ns.BeginWrite(cmd_b,0,cmd_b.Length,new AsyncCallback(this.asyncCallBack),null);
    }
    //讀取服務器響應
    StreamReader reader=new StreamReader(ns);
    string response=reader.ReadLine();
    logs+=response+CRLF;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久丝袜美腿综合| 欧美日韩一区二区三区在线看| 日韩欧美高清在线| 蜜臀av性久久久久av蜜臀妖精| 91麻豆精品国产91久久久久| 琪琪久久久久日韩精品| 日韩视频免费直播| 蜜桃视频在线观看一区二区| 精品电影一区二区三区| 精品亚洲欧美一区| 中文在线资源观看网站视频免费不卡| 成人黄色在线看| 亚洲精品视频免费观看| 欧美日韩色综合| 九九精品视频在线看| 久久精品人人做人人综合| 91影院在线观看| 天堂va蜜桃一区二区三区漫画版| 欧美二区在线观看| 国产乱码字幕精品高清av| 国产精品毛片a∨一区二区三区| 97久久精品人人做人人爽50路| 亚洲午夜在线视频| 久久日韩粉嫩一区二区三区| 91在线观看美女| 免费在线欧美视频| 亚洲国产精品成人综合色在线婷婷 | 国产美女精品在线| 国产精品久久久久精k8| 欧美美女bb生活片| 国产白丝网站精品污在线入口| 亚洲免费成人av| 精品久久久久av影院| 91猫先生在线| 国精产品一区一区三区mba桃花| 亚洲日本欧美天堂| 精品999久久久| 欧美性色综合网| 不卡的电影网站| 老司机精品视频导航| 亚洲精品第1页| 国产欧美一区二区在线| 欧美高清一级片在线| 成人免费视频caoporn| 亚洲高清中文字幕| 中文字幕一区不卡| 欧美xxxxx裸体时装秀| 欧美艳星brazzers| 99久久精品国产观看| 国产一区二区三区四| 天天免费综合色| 亚洲一区二区在线视频| 中文一区在线播放| 久久婷婷国产综合精品青草| 欧美另类一区二区三区| 91女人视频在线观看| 国产一区二区剧情av在线| 日精品一区二区| 亚洲一区欧美一区| 亚洲日本一区二区三区| 中文字幕第一区第二区| 久久天堂av综合合色蜜桃网| 3atv在线一区二区三区| 欧美精品第一页| 欧美日韩高清在线播放| 一本大道av一区二区在线播放| 国产成人99久久亚洲综合精品| 九九视频精品免费| 人人超碰91尤物精品国产| 一区二区三区四区五区视频在线观看| 久久久精品天堂| 久久青草国产手机看片福利盒子 | 国产欧美精品区一区二区三区 | 日韩欧美国产综合| 欧美精品日韩一本| 欧美视频一区在线观看| 欧美亚洲综合久久| 欧美日韩国产区一| 欧美高清视频一二三区| 欧美一区二区三级| 欧美高清hd18日本| 国产精品嫩草影院com| 国产精品理论在线观看| 日韩一区有码在线| 亚洲一区自拍偷拍| 日韩国产精品久久久久久亚洲| 日韩专区欧美专区| 久久国产夜色精品鲁鲁99| 精品在线观看免费| 国产一区二区三区av电影| 国产福利精品一区二区| av午夜精品一区二区三区| 91丨九色丨国产丨porny| 91成人免费在线视频| 欧美在线观看禁18| 欧美一卡2卡3卡4卡| 久久精品日韩一区二区三区| 国产精品久久久久久久久动漫 | 五月天一区二区三区| 日日欢夜夜爽一区| 国产麻豆午夜三级精品| 成人黄色软件下载| 欧美日韩一区在线| 久久夜色精品国产噜噜av| 国产精品二三区| 亚洲自拍偷拍图区| 久久疯狂做爰流白浆xx| 成人免费毛片aaaaa**| 欧美性淫爽ww久久久久无| 91麻豆精品91久久久久久清纯| 亚洲精品一区二区在线观看| 亚洲欧洲国产日本综合| 亚洲国产日日夜夜| 九九视频精品免费| 色悠悠久久综合| 日韩午夜电影在线观看| 国产精品视频一二三区| 天天操天天色综合| 成人免费黄色在线| 91精品国产乱| 亚洲欧洲日韩一区二区三区| 五月天精品一区二区三区| 国产精品一区在线观看乱码| 在线一区二区视频| 久久久精品国产免大香伊 | 国产精品久久久久桃色tv| 亚洲图片自拍偷拍| 成人精品一区二区三区中文字幕| 91国偷自产一区二区开放时间| 日韩免费高清电影| 国产精品对白交换视频 | 欧美色手机在线观看| 久久久久9999亚洲精品| 性久久久久久久| 不卡的av电影| 久久久久久一二三区| 亚洲一级二级在线| 粉嫩13p一区二区三区| 日韩一级片在线播放| 亚洲免费观看视频| 成人三级伦理片| 久久美女高清视频 | 精油按摩中文字幕久久| 欧美亚洲国产bt| 国产精品久久久久aaaa樱花| 国产一区二区在线影院| 亚洲黄色在线视频| 国产成人免费视频精品含羞草妖精| 欧美丰满嫩嫩电影| 亚洲一区在线播放| 色婷婷综合久久久中文一区二区| 国产亚洲自拍一区| 韩国一区二区在线观看| 欧美一区二区三区的| 婷婷六月综合亚洲| 欧美网站大全在线观看| 最新热久久免费视频| av中文字幕亚洲| 欧美激情一区三区| 高清不卡在线观看| 国产偷v国产偷v亚洲高清| 国产自产高清不卡| 欧美成人女星排名| 麻豆精品一区二区三区| 日韩视频一区在线观看| 美国av一区二区| 日韩欧美久久一区| 精品无人码麻豆乱码1区2区| 日韩欧美成人激情| 精品无人区卡一卡二卡三乱码免费卡 | 欧美系列一区二区| 亚洲第一成人在线| 欧美裸体bbwbbwbbw| 天堂精品中文字幕在线| 欧美一区二区三区在线视频| 日韩电影在线一区二区三区| 69堂成人精品免费视频| 奇米影视在线99精品| 精品日韩一区二区三区| 国产精品一区专区| 国产精品久久久久久亚洲毛片| av一区二区三区黑人| 亚洲欧洲99久久| 欧美性大战xxxxx久久久| 日韩电影在线观看电影| 日韩亚洲国产中文字幕欧美| 九色综合国产一区二区三区| 国产日韩精品一区二区三区| 99久久er热在这里只有精品66| 亚洲免费在线看| 51午夜精品国产| 国产一区 二区 三区一级| 国产精品国产三级国产普通话三级 | 亚洲欧美日韩在线不卡| 欧美色图在线观看| 日本aⅴ精品一区二区三区| 久久精品视频免费观看| 色哦色哦哦色天天综合| 日韩精品高清不卡| 久久这里都是精品|