当与POP3一起使用时,StreamReader.ReadLine()总是失败

本文关键字:ReadLine 失败 StreamReader 一起 POP3 当与 | 更新日期: 2023-09-27 17:53:39

我总是无法从代码块中的流中读取。

Data = "STAT"+CRLF;             
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);
            Status.Items.Add(RdStrm.ReadLine());

示例代码如下:

// create server POP3 with port 995
        Server = new TcpClient(POPServ.Text,995);                               
        Status.Items.Clear();
        try
        {
            // initialization
            NetStrm = Server.GetStream();
            RdStrm= new StreamReader(Server.GetStream());
            Status.Items.Add(RdStrm.ReadLine());
            // Login Process
            Data = "USER "+ User.Text+CRLF;             
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);
            Status.Items.Add(RdStrm.ReadLine());
            Data = "PASS "+ Passw.Text+CRLF;                
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);
            Status.Items.Add(RdStrm.ReadLine());
            // Send STAT command to get information ie: number of mail and size
            Data = "STAT"+CRLF;             
            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
            NetStrm.Write(szData,0,szData.Length);
            Status.Items.Add(RdStrm.ReadLine());

我也想启用SSL。请帮帮我!!

当与POP3一起使用时,StreamReader.ReadLine()总是失败

        var client = new TcpClient(serverName, port);
        var sslStream = new System.Net.Security.SslStream(m_client .GetStream());
        sslStream .AuthenticateAsClient(serverName);

一切看起来都很好。读取只是超时吗?您是否在登录期间收到+OK消息?我会尝试做一个缓冲区读取,看看你是否得到任何返回。也可以尝试不同的命令。

我从来没有对网络流使用过ReadLine()。我一直使用BeginRead。

流。BeginRead,然后检查回车换行。

http://msdn.microsoft.com/en-us/library/system.io.stream.beginread.aspx