科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件C# Builder实现POP3信箱的监视

C# Builder实现POP3信箱的监视

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

本文向大家介绍怎样用Borland C# Builder编写一个信箱监视程序。

作者:徐长友 来源:悠游在线 2007年11月14日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
3.获取邮件数量的实现,代码见下:

string str_server;
if ((tB_server.Text!="") && (tB_user.Text!="") && (tB_pwd.Text!=""))
{
TcpClient tcpc = new TcpClient(tB_server.Text,110);
Byte[] outbytes;
string input;
NetworkStream ns = null;
try{
ns = tcpc.GetStream();
StreamReader sr = new StreamReader(ns);
tB_status.Text=sr.ReadLine();

input = "USER " + tB_user.Text + "\r\n";
outbytes = System.Text.Encoding.ASCII.GetBytes(input.ToCharArray());
ns.Write(outbytes,0,outbytes.Length)
tB_status.Text=tB_status.Text+"\r\n"+sr.ReadLine();

input = "PASS " + tB_pwd.Text + "\r\n";
outbytes = System.Text.Encoding.ASCII.GetBytes(input.ToCharArray());
ns.Write(outbytes,0,outbytes.Length)
tB_status.Text=tB_status.Text+"\r\n"+sr.ReadLine();

input = "STAT" + "\r\n";
outbytes = System.Text.Encoding.ASCII.GetBytes(input.ToCharArray());
ns.Write(outbytes,0,outbytes.Length)
str_server=sr.ReadLine();

str_num="";
if (str_server.StartsWith("+OK")){
str_num=str_server.Split(' ')[1];
} else str_num="";

tB_status.Text=tB_status.Text+"\r\n"+"A:"+str_server;

input = "QUIT" + "\r\n";
outbytes = System.Text.Encoding.ASCII.GetBytes(input.ToCharArray());
ns.Write(outbytes,0,outbytes.Length)
tB_status.Text=tB_status.Text+"\r\n"+"B:"+sr.ReadLine();
}
catch(InvalidOperationException ioe){
tB_status.Text="Could not connect to mail server";
}

if (str_num!="") {
WinForm1 form = new WinForm1();
form.str_num=str_num;
form.ScrollShow();
}

  程序与邮件服务器建立一个TCP连接,然后发送POP3的一些命令,取到服务器传回的信息,得到邮件的数量。

  STAT命令的回应中有两个数字,分别表示邮件的数量和邮件的大小。一般格式是这样的“+OK 数量 大小”,所以只要根据服务器返回的信息,提取+OK,然后再按空格分隔得到数量。代码见上。
    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章