Beispiel #1
0
 /// <summary>
 /// DoWork непосредственно выполняющий считывание указанного в диалоге открытия файл.
 /// Также он отправляет файл в первый по очереди сокет
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void backgroundLoadFileWorker_DoWork(object sender, DoWorkEventArgs e)
 {
     try {
         fs = new FileStream(openFileDialog1.FileName, FileMode.Open);
         using (MemoryStream memoryStream = new MemoryStream())
         {
             fs.CopyTo(memoryStream);
             memoryStream.Position = 0;
             MyListener list = new MyListener();
             list.Sender(memoryStream, g_host, g_port);
         }
         //Thread.Sleep(1000); //чтобы успеть посмотреть
         //fs.Close();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "File operation failed",
         MessageBoxButtons.OK,
         MessageBoxIcon.Error);
     }
     finally
     {
         fs.Close();
     }
 }
Beispiel #2
0
 /// <summary>
 /// DoWork непосредственно выполняющий считывание указанного в диалоге открытия файл.
 /// Также он отправляет файл в первый по очереди сокет
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void backgroundLoadFileWorker_DoWork(object sender, DoWorkEventArgs e)
 {
     try {
         fs = new FileStream(openFileDialog1.FileName, FileMode.Open);
         using (MemoryStream memoryStream = new MemoryStream())
         {
             fs.CopyTo(memoryStream);
             memoryStream.Position = 0;
             MyListener list = new MyListener();
             list.Sender(memoryStream, g_host, g_port);
         }
         //Thread.Sleep(1000); //чтобы успеть посмотреть
         //fs.Close();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "File operation failed",
                         MessageBoxButtons.OK,
                         MessageBoxIcon.Error);
     }
     finally
     {
         fs.Close();
     }
 }
Beispiel #3
0
        /// <summary>
        /// Метод работы с сокетами.
        /// В каждом потоке созаётся экземпляр MyListener, который осуществляет приём и отправку полученного файла
        /// </summary>
        /// <param name="namberOfSocked"></param>
        private void WorkerSocket(int namberOfSocked)
        {
            MyListener list = new MyListener();

            list.Receiver(g_host, g_port + (namberOfSocked - 1)); //Слушаем и получаем файл если он есть
            if (namberOfSocked < threadCount)                     //если не последний сокет
            {
                list.GetMemorystream().Position = 0;
                //оправить полученый файл в следующий сокет
                list.Sender(list.GetMemorystream(), g_host, g_port + namberOfSocked);
            }
            else
            { //если это последний сокет ждём и показываем на форме
                Thread.Sleep(2000);
                img = System.Drawing.Image.FromStream(list.GetMemorystream());
            }
        }
Beispiel #4
0
 /// <summary>
 /// Метод работы с сокетами.
 /// В каждом потоке созаётся экземпляр MyListener, который осуществляет приём и отправку полученного файла
 /// </summary>
 /// <param name="namberOfSocked"></param>
 private void WorkerSocket(int namberOfSocked)
 {
     MyListener list = new MyListener();
     list.Receiver(g_host, g_port + (namberOfSocked - 1)); //Слушаем и получаем файл если он есть
     if (namberOfSocked < threadCount) //если не последний сокет
     {
         list.GetMemorystream().Position = 0;
         //оправить полученый файл в следующий сокет
         list.Sender(list.GetMemorystream(), g_host, g_port + namberOfSocked);
     }
     else
     { //если это последний сокет ждём и показываем на форме
         Thread.Sleep(2000);
         img = System.Drawing.Image.FromStream(list.GetMemorystream());
     }
 }