zoukankan      html  css  js  c++  java
  • C#编写电子油箱

    第一步:新建一个windows应用程序,命名为:Mail,并为生成的窗体添加相应的控件,效果图如下:

    第二步,为控件添加相应的代码事件:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    using System.Net;
    using System.Net.Sockets;
    using System.IO;

    namespace Mail
    {
        public partial class Form1 : Form
        {
            public TcpClient Server;
            public NetworkStream NetStrm;
            public StreamReader RdStrm;
            public string Data;
            public byte[] szData;
            public string CRLF = "\r\n";
            public Form1()
            {
                InitializeComponent();
            }

            private void Connect_Click(object sender, EventArgs e)
            {
                Cursor cr = Cursor.Current;
                Cursor.Current = Cursors.WaitCursor;
                Server = new TcpClient(Popserver.Text,110);
                Status.Items.Clear();
                try
                {
                    NetStrm = Server.GetStream();
                    RdStrm = new StreamReader(Server.GetStream());
                    Status.Items.Add(RdStrm.ReadLine());
                    Data = "USER" + Username.Text + CRLF;
                    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
                    NetStrm.Write(szData, 0, szData.Length);
                    Status.Items.Add(RdStrm.ReadLine());
                    Data = "STAT" + CRLF;
                    szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
                    NetStrm.Write(szData, 0, szData.Length);
                    Status.Items.Add(RdStrm.ReadLine());
                    Connect.Enabled = false;
                    Disconnect.Enabled = true;
                    Retrieve.Enabled = true;
                    Cursor.Current = cr;
                }
                catch (InvalidOperationException err)
                {
                    Status.Items.Add("ERROR:" + err.ToString());
                }
            }

            private void Disconnect_Click(object sender, EventArgs e)
            {
                Cursor cr = Cursor.Current;
                Cursor.Current = Cursors.WaitCursor;
                Data = "QUIT" + CRLF;
                szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
                NetStrm.Write(szData, 0, szData.Length);
                Status.Items.Add(RdStrm.ReadLine());
                NetStrm.Close();
                RdStrm.Close();
                Connect.Enabled = true;
                Disconnect.Enabled = false;
                Retrieve.Enabled = false;
                Cursor.Current = cr;
            }

            private void Retrieve_Click(object sender, EventArgs e)
            {

                Cursor cr = Cursor.Current;
                Cursor.Current = Cursors.WaitCursor;
                String szTemp;
                Message.Clear();
                try
                {
                    Data = "RETR" + Mailnum.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;
                            szTemp = RdStrm.ReadLine();
                        }
                        if (BackupChBox.Checked == false)
                        {

                            Data = "DELE" + Mailnum.Text + CRLF;
                            szData = System.Text.Encoding.ASCII.GetBytes(Data.ToCharArray());
                            NetStrm.Write(szData, 0, szData.Length);
                            Status.Items.Add(RdStrm.ReadLine());
                        }
                    }
                    else
                    {
                        Status.Items.Add(szTemp);
                    }
                    Cursor.Current = cr;
                }
                catch (InvalidExpressionException err)
                {
                    Status.Items.Add("ERROR" + err.ToString());
                }
            }
        }
    }
    说明:这只是一个简单的通讯编程,实现的功能也只是收取邮件,发送邮件功能的实现,需要等待......

  • 相关阅读:
    mysql中的跨库关联查询【转】
    原本就有mysql,安装phpstudy使用里面自带的mysql导致原来的没服务【转】
    iframe页面刷新问题【转】
    linux重启网络服务出错Shutting down interface eth0: Device state: 3 (disconnected);Active connection path: /org/freedeskto
    Linux下文件(文件夹)的压缩和解压
    用yum安装命令出现报错Another app is currently holding the yum lock解决方法
    一天24小时每隔15分钟96个点操作(二、展示)
    一天24小时每隔15分钟96个点操作(一)
    HTTP请求的GET与POST方式的区别
    css之block,inline和inline-block概念和区别
  • 原文地址:https://www.cnblogs.com/zwq194/p/1209708.html
Copyright © 2011-2022 走看看