⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 connect.cs

📁 visual c# 网络编程技术与实践实例包括几个源码
💻 CS
字号:
using System;
using System.IO;
using System.Net;
using System.Net.Sockets;
using System.Threading;
namespace 五子棋
{
	/// <summary>
	/// NetWork 的摘要说明。
	/// </summary>
	public class Connect
	{
		public Connect()
		{
		}
		public string str;
        public string info;
		private string ip;
		public Thread thread;
		TcpListener listener;
		bool listenerRun=true;
		public string IP
		{
			get{return ip;}
			set{ip=value;}
		}
		public static string getIP()
		{
			String name = Dns.GetHostName();
			IPHostEntry ips = Dns.GetHostByName(name);
			return ips.AddressList[0].ToString();
		}
		/// <summary>
		/// 开一个线程监听网络
		/// </summary>
		public void Start()
		{
			thread=new Thread(new ThreadStart(listen));
			thread.Start();
		}
		private void listen()
		{
			string ip=getIP();
			try
      {
        listener = new TcpListener(IPAddress.Parse(ip), 5656); 
       	listener.Start();
        str= "正在监听..."; 
				while(listenerRun)
				{
					Socket s = listener.AcceptSocket();
					Byte[] stream = new Byte[80];
					int i=s.Receive(stream) ;
					string message =System.Text.Encoding.UTF8.GetString(stream);
					info=message;
				}
			}
    	catch(System.Security.SecurityException)
      {
  			str="防火墙安全错误!";
      }
    	catch(Exception ex)
      {
          str = "已停止监听!"+ex.Message;
			}

		}
		/// <summary>
		/// 停止监听
		/// </summary>
		public void StopListen()
		{
			listenerRun=false;
			listener.Stop();
		}
		public void Send(ref string str,string info)
		{
			try
			{
				string msg =info;
				TcpClient client = new TcpClient(ip, 5656);
				NetworkStream stream = client.GetStream(); 
				StreamWriter streamwriter = new StreamWriter(stream);
				streamwriter.Write(msg);
				streamwriter.Flush();
				stream.Close();
				client.Close();
			}
      catch
      {
      	str = "目标计算机拒绝连接请求!"; 
			}
		}
		public void Send(string info)
		{
			string msg =info;
			TcpClient client = new TcpClient(ip, 5656);
			NetworkStream stream = client.GetStream(); 
			StreamWriter streamwriter = new StreamWriter(stream);
			streamwriter.Write(msg);
			streamwriter.Flush();
			stream.Close();
			client.Close();
			
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -