搜索
您的当前位置:首页正文

SMTP判断邮箱是否存在,检查email地…

来源:好走旅游网
判断一个Email是否存在的类 ,现在VB代码真的太少了,C#原版弄过来吧,具体录下,反正编译后的类,vb.net也是可以直接引用的嘛,要不就自己转换一下代码。

TcpClient tcpc = new TcpClient(); 
服务器等信息来自于用户输入,建立与服务器25端口的连接。

try 

tcpc.Connect(strServer,intPort); 
StreamReader sr = new StreamReader(tcpc.GetStream(),Encoding.Default); 
sr.ReadLine(); 
... 

请注意上面代码中两点:一在beta2中不能再通过判断返回值的方法来判断建立的连接是否成功,只能通过捕捉错误例外的方法判断;二在打开连接,使用Stream读取时,必须有一个sr.ReadLine,一行是服务器的欢迎信息加版本信息。

接下来就是按照上面所说的步骤来完成操作:

其中OperaStrem是我们是自定义的函数,用于操作连接流:

public string OperaStream(TcpClient tcpc,string strCmd) 

Stream TcpStream; 
strCmd = strCmd + "\r\n"; file://加入换行符 
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); 
ShowPro.Controls.Add(new LiteralControl("执行命令:<font color=red>"+strCmd+"</font><br/>返回数据:"+rl+"<br/>"));
return sp; 

此函数的返回值是流的信息代码,用于判断操作是否成功,250表示成功,550表示只能适用于本地邮件,也就是说发件人必须是该服务器上的用户,比如在连接smtp.163.net,就必须拥有一个真实有效的163.net帐号,这种做法是服务器防止外人使用服务发送垃圾邮件

因篇幅问题不能全部显示,请点此查看更多更全内容

Top