private void btnExit_Click(object sender, RoutedEventArgs e) { SocketServerEx.CloseSocket(); btnStartServer.IsEnabled = true; btnSend.IsEnabled = false; lbStatus.Content = "Closed socket"; }
private void BtnExit_Click(object sender, RoutedEventArgs e) { SocketServerEx.CloseSocket(); _running = false; BtnStart.IsEnabled = true; Lstatus.Content = "Closed"; }
private void SendMessageTb_OnKeyUp(object sender, KeyEventArgs e) { if (e.Key != Key.Enter) { return; } SocketServerEx.MessageClient($"{SendMessageTb.Text}"); SendMessageTb.Text = string.Empty; }
private void BtnSend_Click(object sender, RoutedEventArgs e) { if (tbMessage.Text != string.Empty) { var msg = tbMessage.Text; SocketServerEx.Send(msg); tbMessage.Text = string.Empty; tbConsoleOutput.Text = tbConsoleOutput.Text + DateTime.Now.ToString("h:mm:ss tt") + " Server:\n" + msg + "\n"; } }
private void BtnStart_Click(object sender, RoutedEventArgs e) { var port = TbPort.Text; _running = true; var ipaddress = TbIpAddress.Text; Task.Run(() => { SocketServerEx.StartListening(port, ipaddress); }); Lstatus.Content = "Listening"; BtnStart.IsEnabled = false; new Task(GetDataAndUpdateConsoleOutputBox).Start(); }
public MainWindow() { InitializeComponent(); tbPort.Text = @"23000"; List <string> strIPAdresses = SocketServerEx.GetAllIpAddresses(); foreach (string str in strIPAdresses) { ListBoxItem itm = new ListBoxItem(); itm.Content = str; cbIPAddresses.Items.Add(itm); } }
private void GetDataAndUpdateConsolOutputBox() { while (running) { SocketServerEx.GetReceivedDataEvent().WaitOne(); string str = SocketServerEx.GetData(); Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, new ThreadStart(delegate { tbConsoleOutPut.Text = DateTime.Now.ToString("h:mm:ss tt") + " Client: " + str + tbConsoleOutPut.Text; })); } }
private void btnSend_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrEmpty(tbPayLoad.Text)) { return; } try { tbConsoleOutPut.Text = DateTime.Now.ToString("h:mm:ss tt") + " Server: " + tbPayLoad.Text + "\n" + tbConsoleOutPut.Text; SocketServerEx.Send(tbPayLoad.Text); tbPayLoad.Text = ""; } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void GetDataAndUpdateConsoleOutputBox() { while (running) { SocketServerEx.GetReceivedDataEvent().WaitOne(); //SocketServerEx.GetAutoResetEvent().WaitOne(); var str = SocketServerEx.GetData(); var size = str.Length; Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, new ThreadStart( delegate { tbConsoleOutput.Text = tbConsoleOutput.Text + DateTime.Now.ToString("h:mm:ss tt") + " Client:\n" + str; tbConsoleOutput.ScrollToEnd(); })); } }
//private void GetDataAndUpdateClients() //{ // while (running) // { // SocketServerEx.GetClientDisconnectedEvent().WaitOne(); // Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, // new ThreadStart(delegate // { // foreach (Socket client in SocketServerEx.GetSockets()) // { // string str = client.RemoteEndPoint.ToString(); // if (lbClients.Items.Cast<ListBoxItem>().Any(x => x.Content.Equals(str))) // { // ListBoxItem item = new ListBoxItem(); // item.Content = str; // lbClients.Items.Remove(item); // } // } // SocketServerEx.GetRemovedClientFromListboxEvent().Set(); // })); // } //} private void UpdateClientsListBox() { while (running) { SocketServerEx.GetClientConnectedDisconnectedEvent().WaitOne(); Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, new ThreadStart(delegate { while (lbClients.Items.Count > 0) { lbClients.Items.RemoveAt(0); } foreach (Socket client in SocketServerEx.GetSockets()) { string str = client.RemoteEndPoint.ToString(); ListBoxItem item = new ListBoxItem(); item.Content = str; lbClients.Items.Add(item); } })); } }
public MainWindow() { InitializeComponent(); tbPort.Text = @"23000"; List <string> strIPAdresses = SocketServerEx.GetAllIpAddresses(); foreach (string str in strIPAdresses) { ListBoxItem itm = new ListBoxItem(); itm.Content = str; cbIPAddress.Items.Add(itm); } //var localIPs = Dns.GetHostEntry(Dns.GetHostName()); //tbIpAddress.Text = localIPs.AddressList.First(x => x.AddressFamily == AddressFamily.InterNetwork).ToString(); //tbPort.Text = "23"; //btnStartServer.Click += BtnStartServer_Click; //btnClose.Click += BtnClose_Click; //btnSend.Click += BtnSend_Click; }
private void btnStartServer_Click(object sender, RoutedEventArgs e) { try { string strPort = tbPort.Text; ListBoxItem selectedItem = (ListBoxItem)cbIPAddresses.SelectedItem; string strIPAddress = (string)selectedItem.Content; if (!areTasksStarted) { Task.Run(() => SocketServerEx.StartListening(strPort, strIPAddress)); new Task(GetDataAndUpdateConsolOutputBox).Start(); Task.Run(() => UpdateClientsListBox()); areTasksStarted = true; } lbStatus.Content = "Listening"; btnStartServer.IsEnabled = false; btnSend.IsEnabled = true; } catch (Exception ex) { Debug.WriteLine(ex.Message); } }
private void BtnStartServer_Click(object sender, RoutedEventArgs e) { var strPort = tbPort.Text; //var strIp = tbIpAddress.Text; ListBoxItem selectedItem = (ListBoxItem)cbIPAddress.SelectedItem; string strIpAddress = (string)selectedItem.Content; if (!areTasksStarted) { Task.Run(() => SocketServerEx.StartListening(strPort, strIpAddress)); new Task(GetDataAndUpdateConsoleOutputBox).Start(); Task.Run(() => UpdatedClientListBox()); areTasksStarted = true; } lblStatus.Content = "listening"; btnStartServer.IsEnabled = false; btnSend.IsEnabled = true; //Task.Run(() => SocketServerEx.StartListening(strPort, strIp)); //lblStatus.Content = "listening"; //btnStartServer.IsEnabled = false; //var t = new Task(GetDataAndUpdateConsoleOutputBox); //t.Start(); }