/// <summary> /// 断开连接 /// </summary> /// <returns>返回是否成功</returns> public bool Close() { if (State != Pop3STATE.UNCONNECTED) { SendCommand("QUIT", StrmWtr); string ret = ReceiveResponse(StrmRdr); StrmRdr.Close(); client.Close(); this.State = Pop3STATE.UNCONNECTED; return(true); } return(false); }
/// <summary> /// 登录 /// </summary> /// <returns>返回是否登录成功</returns> public bool Login(User user) { //连接 this.User = user; try { client = new TcpClient(user.POP3Server, user.POP3Port); StrmWtr = client.GetStream(); StrmRdr = new StreamReader(client.GetStream()); } catch (Exception e) { e.ToString(); this.State = Pop3STATE.UNCONNECTED; return(false); } //连接返回的返回结果 string ret = ReceiveResponse(StrmRdr); if (ret.IndexOf("+OK") == 0) //成功建立连接 { //StrmWtr.Close(); //client.Close(); //验证用户名 SendCommand("USER " + User.Username, StrmWtr); ret = ReceiveResponse(StrmRdr); if (ret.IndexOf("+OK") == 0) { //验证密码 SendCommand("PASS " + User.Password, StrmWtr); ret = ReceiveResponse(StrmRdr); if (ret.IndexOf("+OK") == 0) { //验证成功,进入连接状态 State = Pop3STATE.CONNECTED; return(true); } } } this.State = Pop3STATE.UNCONNECTED; return(false); }
} //当前连接状态 public POP3Client(User user) { User = user; State = Pop3STATE.UNCONNECTED; }