zoukankan      html  css  js  c++  java
  • 验证用户邮件帐号及密码

    public TcpClient Server;

    public NetworkStream NetStrm;

    public StreamReader  RdStrm;

    public string Data;

    public byte[] szData;

    public string CRLF = " ";

    private void ConnectBtn_Click(object sender, System.EventArgs e)

    {

    // change cursor into wait cursor

    Cursor cr = Cursor.Current;

    Cursor.Current = Cursors.WaitCursor;

    // create server POP3 with port 110

    Server = new TcpClient(POPServ.Text,110);

    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());

    // change enabled - disabled button

    ConnectBtn.Enabled = false;

    DisconnectBtn.Enabled = true;

    RetrieveBtn.Enabled = true;

    // back to normal cursor

    Cursor.Current = cr;

    }

    catch(InvalidOperationException err)

    {

    Status.Items.Add("Error: "+err.ToString());

    }

    }

    private void DisconnectBtn_Click(object sender, System.EventArgs e)

    {

    // change cursor into wait cursor

    Cursor cr = Cursor.Current;

    Cursor.Current = Cursors.WaitCursor;

    // Send QUIT command to close session from POP server

    Data = "QUIT"+CRLF;

    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());

    NetStrm.Write(szData,0,szData.Length);

    Status.Items.Add(RdStrm.ReadLine());

    //close connection

    NetStrm.Close();

    RdStrm.Close();

    // change enabled - disabled button

    ConnectBtn.Enabled = true;

    DisconnectBtn.Enabled = false;

    RetrieveBtn.Enabled = false;

    // back to normal cursor

    Cursor.Current = cr;

    }

    private void RetrieveBtn_Click(object sender, System.EventArgs e)

    {

                double x = 0.00;

                Task.WaitAll(()=> new { x = GetValueAsync()}, 1000);

    // change cursor into wait cursor

    Cursor cr = Cursor.Current;

    Cursor.Current = Cursors.WaitCursor;

    string szTemp;

    Message.Clear();

    try

    {

    // retrieve mail with number mail parameter

    Data = "RETR "+ Number.Text+CRLF;

    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());

    NetStrm.Write(szData,0,szData.Length);

    szTemp = RdStrm.ReadLine();

    if(szTemp[0]!='-') 

    {

                      

    while(szTemp!=".")

    {

    Message.Text += szTemp+CRLF;

    szTemp = RdStrm.ReadLine();

    }

    }

    else

    {

    Status.Items.Add(szTemp);

    }

    // back to normal cursor

    Cursor.Current = cr;

    }

    catch(InvalidOperationException err)

    {

    Status.Items.Add("Error: "+err.ToString());

    }

    }

  • 相关阅读:
    Spring boot 整合 Mybatis + Thymeleaf开发web(一)
    JAVA截取字符串的几种方式
    【转】JAVA异常报错大全
    Linux中允许远程用户登录访问mysql的方法
    Ubuntu系统下将默认的python2.7升级到3.5
    Ubuntu+Django+Nginx+uWSGI+Mysql搭建Python Web服务器
    python将数据写入excel代码,python与office交互
    pyqt4桌面软件各种画布组合结构实例
    python之pyqt4的简单窗口布局以及信号和槽(上代码)
    python 005 正则表达式
  • 原文地址:https://www.cnblogs.com/yufan27209/p/4497776.html
Copyright © 2011-2022 走看看