c#带界面-客户端与服务器通信TCP

  • 格式:doc
  • 大小:56.50 KB
  • 文档页数:5

下载文档原格式

  / 5
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

服务器端界面

服务器端代码:

using System;

using System.Collections.Generic;

using ponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using .Sockets;

using System.Threading;

using System.IO;

using ;

using System.Collections;

namespace IMS.Server

{

public partial class Server : Form

{

TcpListener myListener;

TcpClient tcpClient = new TcpClient();

Thread mythread;

NetworkStream ns;

public Server()

{

InitializeComponent();

}

private void Server_Load(object sender, EventArgs e)

{

Control.CheckForIllegalCrossThreadCalls = false;

mythread = new Thread(new ThreadStart(receive));

mythread.IsBackground = true;

mythread.Start();

}

private void receive()

{

myListener = new TcpListener(IPAddress.Parse("192.168.1.106"), 8080);

myListener.Start();

tcpClient = myListener.AcceptTcpClient();

while (true)

{

string rec = "";

ns = tcpClient.GetStream();

byte[] bytes = new byte[1024];

ns.Read(bytes,0,bytes.Length);

rec = Encoding.Unicode.GetString(bytes);

richTextBox1.Text = rec;

ns.Flush();

}

}

private void btnSend_Click(object sender, EventArgs e)

{

try

{

ns = tcpClient.GetStream();

byte[] bytes = new byte[1024];

// bytes = Encoding.Unicode.GetBytes(sendmsg);

bytes = Encoding.Unicode.GetBytes(richTextBox1.Text +"\r\n" + "服务器说:" + richTextBox2.Text);

ns.Write(bytes,0,bytes.Length);

richTextBox1.Text = richTextBox1.Text + "\r\n" + "服务器说:" + richTextBox2.Text;

richTextBox2.Clear();

}

catch { }

}

private void btnstop_Click(object sender, EventArgs e)

{

this.Close();

}

}

}

客户端界面:

客户端代码:

using System;

using System.Collections.Generic;

using ponentModel;

using System.Data;

using System.Drawing;

using System.Text;

using System.Windows.Forms;

using .Sockets;

using System.Threading;

using System.IO;

using ;//Endpoint

using System.Collections;

namespace IMS.Client

{

public partial class CLient : Form

{

TcpClient tcpClient = new TcpClient();

NetworkStream ns;

Thread myThread;

public CLient()

{

InitializeComponent();

}

private void CLient_Load(object sender, EventArgs e)

{

Control.CheckForIllegalCrossThreadCalls = false;

myThread = new Thread(new ThreadStart(receive));

myThread.IsBackground = true;

myThread.Start();

}

private void receive()

{

tcpClient.Connect(IPAddress.Parse("192.168.1.106"), 8080);

while (true)

{

ns = tcpClient.GetStream();

string ReadMessage = "";

byte[] bytes = new byte[1024];

ns.Read(bytes, 0, bytes.Length);

ReadMessage = Encoding.Unicode.GetString(bytes); richTextBox1.Text = ReadMessage;

ns.Flush();

}

}

private void btnSend_Click(object sender, EventArgs e)

{