Exemple #1
0
        public void Start()
        {
            try
            {
                listener = new TcpListener(MyIp, Convert.ToInt32(port));
                listener.Start();

                byte[] data = new byte[1024];
                while (flag)
                {
                    mytcpclient = listener.AcceptTcpClient();
                    stream      = mytcpclient.GetStream();
                    do
                    {
                        CountBytes = stream.Read(data, 0, data.Length);
                        builder2.Append(Encoding.Unicode.GetString(data, 0, CountBytes));
                    }while (stream.DataAvailable);
                    TB.Invoke((MethodInvoker)(delegate() { TB.AppendText(Environment.NewLine + " Подключился " + builder2.ToString()); }));
                    data = null;

                    DateTime DTime = DateTime.Now;

                    data = Encoding.Unicode.GetBytes(DTime.ToString());
                    TB.Invoke((MethodInvoker)(delegate() { TB.AppendText(Environment.NewLine + " Отправляем - " + DTime.ToString()); }));

                    stream.Write(data, 0, data.Length);
                    builder2.Clear();
                }
                stream.Close();
                listener.Stop();
                Thread.ResetAbort();
            }
            catch (Exception ex)
            {
                //TB.AppendText(Environment.NewLine + "Отключаемся");
                if (stream != null)
                {
                    stream.Close();
                }
            }
        }
        public void CONNZAP()
        {
            try
            {
                Btn.Invoke((MethodInvoker)(delegate() { Btn.Enabled = false; }));
                client = new TcpClient(address, port); //подключаемся
                stream = client.GetStream();           //открываем поток

                {
                    data = Encoding.Unicode.GetBytes(Environment.UserName); //имя залогиневшего пользователя конвертим в массив байт
                    stream.Write(data, 0, data.Length);                     //отправляем массив байт по сети

                    do
                    {
                        CountBytes = stream.Read(data, 0, data.Length);
                        builder.Append(Encoding.Unicode.GetString(data, 0, CountBytes));
                    }while (stream.DataAvailable);
                    TB.Invoke((MethodInvoker)(delegate() { TB.AppendText(Environment.NewLine + " Получили от сервера - " + builder.ToString()); }));
                    builder.Clear();
                    Btn.Invoke((MethodInvoker)(delegate() { Btn.Enabled = true; }));
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Не удалось установить соединение, проверьте параметры подключения и брандмауэр на предмет блокировки порта" + ex, "Ошибка соединения", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                if (client != null)
                {
                    client.Close();
                }
            }
            finally
            {
                if (client != null)
                {
                    client.Close();
                }
                Btn.Invoke((MethodInvoker)(delegate() { Btn.Enabled = true; }));
            }
        }
 public MainWindow()
 {
     InitializeComponent();
     LabelForOperation.Content = stringA;
     TB.AppendText("0");
 }