Member 13555640 Ответов: 2

Хотите автоматически копировать данные с ПК при подключении usb к компьютеру


I want to plug usb into the pc will automatically copy the selected folder to usb, but have trouble:
Plug in usb 1 to pc then ok.
plug usb 2 into pc then usb 1 stop copy, when usb 2 copy finished, usb 1 continues.
Now I want to plug in multiple usb at the same time all are copy.


Что я уже пробовал:

private void OnDriveArrived(object sender, DriveDetectorEventArgs e)
       {

               string s = "Phát hiện ổ " + e.Drive + " Đã cắm vào";
               listBox1.Items.Add(s);

               string copy1 = textBox1.Text;
           try
           {

                   FileSystem.CopyDirectory(copy1, e.Drive, UIOption.AllDialogs, UICancelOption.DoNothing);


           }
           catch (Exception ex)
           {
               MessageBox.Show("Error : Kiểm tra đường dẩn mục copy",
                               "Error",
                               MessageBoxButtons.OK,
                               MessageBoxIcon.Error);
           }
           return;

       }

Member 13555640

Теперь я хочу добавить MessageBox к сообщению, когда копия будет завершена. Пожалуйста, просто добавьте еще. Большое спасибо

2 Ответов

Рейтинг:
19

Patrice T

Цитата:
Теперь я хочу подключить несколько usb одновременно, все они копируются.

Ответ-многопоточность.
Основной поток содержит usb-прослушиватель, и вы запускаете поток копирования для каждого usb-ключа, когда они подключены.


Member 13555640

Вы можете отредактировать мой код?

Member 13555640

Спасибо вам.
Я сделал это

Patrice T

Ницца.

Member 13555640

Теперь я хочу добавить MessageBox к сообщению, когда копия будет завершена и
Автоматически извлеките usb, когда закончите. Пожалуйста, просто добавьте еще. Большое спасибо

Patrice T

Воспользуйся Улучшить вопрос чтобы обновить ваш вопрос.
Чтобы каждый мог обратить внимание на эту информацию.
Или открыть новый вопрос.

Member 13555640

Вы не могли бы мне помочь?

Рейтинг:
0

Member 13555640

private void OnDriveArrived(object sender, DriveDetectorEventArgs e)
        {
           
               
                string s = "Phát hiện ổ " + e.Drive + " Đã cắm vào";
          
                listBox1.Items.Add(s);
           Thread thread = new Thread(() =>
            {
                try
                {
                    string copy1 = textBox1.Text;
                    FileSystem.CopyDirectory(
                            copy1,
                            e.Drive,
                            UIOption.AllDialogs,
                            UICancelOption.DoNothing);
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error : " + ex.Message,
                                    "Error",
                                    MessageBoxButtons.OK,
                                    MessageBoxIcon.Error);
                }
            });
            thread.Start();
            
           
        }