public void ConnectionToChat(string login) { IPEndPoint srcIP = new IPEndPoint(UserIP, UDP_PORT); IPEndPoint destIP = new IPEndPoint(IpConfig.CountBroadcastIPINV(UserIP).Address, UDP_PORT); UdpClient udpClient = new UdpClient(srcIP); udpClient.EnableBroadcast = true; UserLogin = login; byte[] connectMessBytes = Encoding.UTF8.GetBytes(login); try { udpClient.Send(connectMessBytes, connectMessBytes.Length, destIP); udpClient.Close(); currentTime = DateTime.Now; string connectMess = string.Format("{0} <{1}> подключился к чату\n", currentTime.ToLongTimeString(), login); chatHistory.Append(connectMess); updateChat(string.Format("{0} Вы <{1}> подключились к чату", currentTime.ToLongTimeString(), login)); Task recieveUdpBroadcast = new Task(ReceiveBroadcast); recieveUdpBroadcast.Start(); Task recieveTCP = new Task(ReceiveTCP); recieveTCP.Start(); } catch { MessageBox.Show("Sending Error!", "BAD", MessageBoxButton.OKCancel); } }
private void Window_Loaded(object sender, RoutedEventArgs e) { hostsList = IpConfig.GetAllLocalHosts(); lbHosts.ItemsSource = hostsList; }