用C#电子邮件验证的类

导读:
  /*
  电子邮件验证
  Windows2000 、Microsoft.NET Beta2、C#
  Made By Qingming Zhao
  Email: zqm2000@126.com
  2002,2,17
  csc /target:library ValideEmail.cs
  */
  using System;
  using System.Net.Sockets;
  using System.IO;
  using System.Text;
  namespace BysWangZhan
  {
  class ValidateEmail //电子邮件验证
  {
  public string strEmail;
  public string strServer;
  public int intPort;
  string Email
  {
  set
  {
  strEmail=value;
  }
  get
  {
  return strEmail;
  }
  }
  string Server
  {
  set
  {
  strServer=value;
  }
  get
  {
  return strServer;
  }
  }
  int Port
  {
  set
  {
  intPort=value;
  }
  get
  {
  return intPort;
  }
  }
  /* static void Main(string[] args)
  {
  ValidateEmail MyTest=new ValidateEmail();
  MyTest.Email="zqm446@octopus.cdut.edu.cn";
  MyTest.Server="octopus.cdut.edu.cn";
  MyTest.Port=25; //默认端口是25
  Console.WriteLine(MyTest.Exists());
  }
  */ public bool Exists()
  {
  TcpClient tcpc = new TcpClient();
  tcpc.Connect(strServer,intPort);
  StreamReader sr1 = new StreamReader(tcpc.GetStream(),Encoding.Default);
  sr1.ReadLine();
  
  if(OperaStream(tcpc,"HELO "+strServer) != "250")
  {
  OperaStream(tcpc,"QU99v");
  return false;
  }
  if(OperaStream(tcpc,"MAIL FROM: my@my.com") != "250")
  {
  OperaStream(tcpc,"QU99v");
  return false;
  }
  if(OperaStream(tcpc,"RCPT TO: "+strEmail) != "250")
  {
  OperaStream(tcpc,"QU99v");
  return false;
  }
  else
  {
  OperaStream(tcpc,"QU99v");
  return true;
  }
  }
  static string OperaStream(TcpClient tcpc,string strCmd)
  {
  Stream TcpStream;
  strCmd = strCmd + "\r\n"; //加入换行符
  TcpStream = tcpc.GetStream();
  byte[] bWrite = Encoding.Default.GetBytes(strCmd.ToCharArray());
  TcpStream.Write(bWrite,0,bWrite.Length);
  StreamReader sr = new StreamReader(tcpc.GetStream(),Encoding.Default);
  string rl = sr.ReadLine();
  string sp = rl.Substring(0,3);
  return sp;
  }
  }
  }

本文转自
http://study.qqcf.com/web/224/24041.htm

你可能感兴趣的:(C++,c,.net,C#,Microsoft)