public ServerWorker(Socket client, HandleWorker removeWorker) { this.client = client; this.removeWorker = removeWorker; isRun = true; path = createStorePlace(); }
public ServerListener(Server server, HandleWorker addWorker, HandleWorker removeWorker) { this.server = server; isRun = true; this.addWorker = addWorker; this.removeWorker = removeWorker; }
public DataForm(ServerWorker worker, HandleWorker endWorking) { InitializeComponent(); this.worker = worker; this.endWorking = endWorking; this.labelName.Text = worker.client.RemoteEndPoint.ToString(); pos = 0; }
public Server(int port, HandleWorker addWorker, HandleWorker removeWorker) { workers = new List <ServerWorker>(); socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); IPEndPoint iPEndPoint = new IPEndPoint(IPAddress.Any, port); socket.Bind(iPEndPoint); listener = new ServerListener(this, addWorker, removeWorker); new Thread(listener.Run).Start(); }
public void AddToListClient(ServerWorker worker) { workers[worker] = false; if (listClient.InvokeRequired) { HandleWorker a = new HandleWorker(AddToListClient); Invoke(a, new object[] { worker }); } else { ListViewItem listViewItem = new ListViewItem(worker.client.RemoteEndPoint.ToString()); listViewItem.SubItems.Add(worker.client.Connected.ToString()); this.listClient.Items.Add(listViewItem); } }
public void RemoveFromListClient(ServerWorker worker) { if (listClient.InvokeRequired) { HandleWorker a = new HandleWorker(RemoveFromListClient); Invoke(a, new object[] { worker }); } else { string ep = worker.client.RemoteEndPoint.ToString(); foreach (ListViewItem listViewItem in listClient.Items) { if (listViewItem.Text.Equals(ep)) { listClient.Items.Remove(listViewItem); break; } } listClient.Refresh(); } }