服务端
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net.Sockets;
using System.Net;
using System.Threading; namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private TcpListener tcp;
private void button1_Click(object sender, EventArgs e)
{
tcp = new TcpListener(IPAddress.Any, 5000);
tcp.Start();
Thread t = new Thread(server);
t.IsBackground = true;
t.Start(tcp);
} private void server(object o)
{ TcpListener list = o as TcpListener;
this.textBox1.AppendText("连接成功"+"\r\n");
while (true)
{
const int buffer = 256;
TcpClient client = list.AcceptTcpClient();
NetworkStream strem = client.GetStream();
byte[] b = new byte[buffer];
int r = strem.Read(b, 0, buffer);
string str = Encoding.UTF8.GetString(b, 0, r); this.textBox2.AppendText(client.Client.RemoteEndPoint.ToString() + ":"+str+"\r\n");
strem.Close(); } } public void showmsg(string msg)
{
this.textBox2.AppendText(msg + "\r\n");
} private void Form1_Load(object sender, EventArgs e)
{
Control.CheckForIllegalCrossThreadCalls = false;
}
}
}
客户端
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net.Sockets;
using System.Net;
using System.Threading; namespace client
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private TcpClient client;
private void button1_Click(object sender, EventArgs e)
{
const int size = 406;
client = new TcpClient();
client.Connect(IPAddress.Parse("172.16.5.24"),5000);
NetworkStream strem = client.GetStream();
string str = this.textBox1.Text.Trim();
byte[] b = Encoding.UTF8.GetBytes(str);
strem.Write(b, 0, b.Length);
strem.Close();
client.Close(); } private void Form1_Load(object sender, EventArgs e)
{
Control.CheckForIllegalCrossThreadCalls = false;
}
}
}