zoukankan      html  css  js  c++  java
  • socket

     public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
                TextBox.CheckForIllegalCrossThreadCalls = false;
            }
            //负责监听端口
            Socket sokWelcome = null;
            //负责和客户端socket通信
            Socket sokConnection = null;
            //负责监听的线程
            Thread threadWatchPort = null;
    
            
            public void StartListening()
            {
                try
                {
                    IPAddress address = IPAddress.Parse(txtIP.Text.Trim());
                    IPEndPoint endpoint = new IPEndPoint(address, int.Parse(txtProt.Text.Trim()));
                    sokWelcome = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                    sokWelcome.Bind(endpoint);
                    sokWelcome.Listen(10);
                    threadWatchPort = new Thread(WatchPort);
                    threadWatchPort.Start();
                    ShowMsg("开始监听....");
                }
                catch (Exception ex)
                {
    
                    ShowErr("", ex);
                }
                
            }
            public void WatchPort()
            {
                while (true)
                {
                    try
                    {
                        sokConnection = sokWelcome.Accept();
                        ShowMsg("监听到链接啦...");
                    }
                    catch (Exception ex)
                    {
    
                        ShowErr("", ex);
                    }
                }
            }
            public void ShowErr(string msg, Exception ex)
            {
                ShowMsg("---------------begin---------------------");
                ShowMsg(msg + "" + ex.Message);
                ShowMsg("---------------end-----------------------");
     
            }
            public void ShowMsg(string msg)
            {
                txtShow.AppendText(msg + "
    ");
            }
            private void btnListen_Click(object sender, EventArgs e)
            {
                StartListening();
            }
    
            private void btnSend_Click(object sender, EventArgs e)
            {
                string strMsg = txtInput.Text.Trim();
                byte[] byteMsg = Encoding.UTF8.GetBytes(strMsg);
                sokConnection.Send(byteMsg, byteMsg.Length, SocketFlags.None);
    
            }
        }
  • 相关阅读:
    洛谷 P1014 Cantor表 Label:续命模拟QAQ
    NOIp 2012 #2 借教室 Label:区间修改线段树
    洛谷 P1012 拼数 Label:续命模拟QAQ
    如何自定义报表动作的打开方式
    openerp import l field size limit
    如何在search中动态的显示和隐藏tree中的字段
    Centos yum install
    openerp binary filed import export
    openerp service install
    SSH config
  • 原文地址:https://www.cnblogs.com/zhanying/p/3491239.html
Copyright © 2011-2022 走看看