public partial class viewclient : Form { private readonly int port; private TcpClient client; //2nd Client private TcpClient client2; private TcpListener server; private NetworkStream mainStream; private NetworkStream mainStream2; private readonly Thread Listening; private readonly Thread GetImage; public viewclient(int Port) { port = Port; client = new TcpClient(); client2 = new TcpClient(); Listening = new Thread(StartListening); GetImage = new Thread(ReceiveImage); InitializeComponent(); } private void StartListening() { while (!client.Connected) { server.Start(); client = server.AcceptTcpClient(); client2 = server.AcceptTcpClient(); } GetImage.Start(); } private void StopListening() { server.Stop(); client = null; client2 = null; if (Listening.IsAlive) Listening.Abort(); if (GetImage.IsAlive) GetImage.Abort(); } private void ReceiveImage() { BinaryFormatter binFormatter = new BinaryFormatter(); while (client.Connected) { mainStream = client.GetStream(); mainStream2 = client2.GetStream(); pictureBox1.Image = (Image)binFormatter.Deserialize(mainStream); pictureBox2.Image = (Image)binFormatter.Deserialize(mainStream2); } } private void ReceiveImage1() { BinaryFormatter binFormatter = new BinaryFormatter(); while (client2.Connected) { mainStream = client2.GetStream(); pictureBox2.Image = (Image)binFormatter.Deserialize(mainStream); } } protected override void OnLoad(EventArgs e) { base.OnLoad(e); server = new TcpListener(IPAddress.Any, port); Listening.Start(); } protected override void OnFormClosing(FormClosingEventArgs e) { base.OnFormClosing(e); StopListening(); }
var
This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)