Torna al Thread

private BackgroundWorker _backgroundWorkerB1; public winMain() { InitializeComponent(); //BACKGROUNDWORKER BACKUP 1 _backgroundWorkerB1 = new BackgroundWorker(); _backgroundWorkerB1.WorkerReportsProgress = true; _backgroundWorkerB1.WorkerSupportsCancellation = true; // CREAZIONE HANDLER BACKGORUNDWORK _backgroundWorkerB1.DoWork += new DoWorkEventHandler(_backgroundWorkerB1_DoWork); _backgroundWorkerB1.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_backgroundWorkerB1_RunWorkerCompleted); _backgroundWorkerB1.ProgressChanged += new ProgressChangedEventHandler(_backgroundWorkerB1_ProgressChanged); } private void _backgroundWorkerB1_DoWork(object sender, DoWorkEventArgs e) { // Settaggio nome dell'archivio da creare ArchivioB1.FileName = dest1 + "\\" + nome1 + ".zip"; // Crea il nuovo archivio ArchivioB1.OpenArchive(System.IO.FileMode.Create); ArchivioB1.OnOverallProgress += new BaseArchiver.OnOverallProgressDelegate(ArchivioB1_OnOverallProgress); // Setta la directory dell'origine ArchivioB1.BaseDir = org1; // Copia tutti i file nell'archivio creato ArchivioB1.AddFiles("*.*"); // Chiusura archivio ArchivioB1.CloseArchive(); } private void _backgroundWorkerB1_ProgressChanged(object sender, ProgressChangedEventArgs e) { pbBN1.Value = e.ProgressPercentage; } private void _backgroundWorkerB1_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { if (e.Cancelled) { //Una Cancellazione lbBN1Stato.Content = "Annullato.."; } else if (e.Error != null) { //Un Errore lbBN1Stato.Content = "Errore.."; } else { //Completato lbBN1Stato.Content = "Completato.."; } _backgroundWorkerB1.Dispose(); MessageBox.Show("Backup Completati!", "Informazione..", MessageBoxButton.OK, MessageBoxImage.Information); } private void ArchivioB1_OnOverallProgress(object sender, double progress, TimeSpan timeElapsed, TimeSpan timeLeft, ProcessOperation operation, ProgressPhase progressPhase, ref bool cancel) { _backgroundWorkerB1.ReportProgress(Convert.ToInt32(progress)); }
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5