private void UpdateLastSaveDate() { Serialization.serializeLastSaveDate(DateTime.Now); }
public void execute(BackgroundWorker bgw) { //Envoi de mail en début de sauvegarde try { Mailer m = new Mailer(this); m.sendNotificationDebut(); Log.notifieDebutSauvegarde(); } catch (Exception e) { Log.write("- " + DateTime.Now.ToShortDateString() + DateTime.Now.ToShortTimeString() + ": " + e.Message + "/n"); } //Mise à de la date de dernière sauvegarde Serialization.serializeLastSaveDate(DateTime.Now); //chargement de la liste des fichiers à sauvegarder ArrayList pathesList = (ArrayList)Serialization.deserializeXML("folders.xml"); string path = this.saveRoot + @".tmp"; //création du dossier de sauvegarde de l'utilisateur try { if (Directory.Exists(path)) { Directory.Delete(path, true); } if (Directory.Exists(this.saveRoot)) { Directory.Delete(this.saveRoot, true); } Directory.CreateDirectory(path); } catch (UnauthorizedAccessException uae) { MessageBox.Show(uae.Message + Environment.NewLine + "veuillez le supprimer manuellement"); } //construction du chemin de sauvegarde des fichiers et copie des fichiers foreach (string s in pathesList) { try { if (!this.bgwk.CancellationPending) { string savedDirPath = ""; savedDirPath += path + @"\" + this.toSavedFilePathFormat(s); if (!Directory.Exists(savedDirPath)) { Directory.CreateDirectory(savedDirPath); } this.copyFiles(s, this.bgwk); } else { break; } } catch (Exception ex) { MessageBox.Show(ex.Message); } } try { Log.notifieFinSauvegarde(); Directory.Move(this.saveRoot + @".tmp", this.saveRoot); } catch (Exception e) { MessageBox.Show(e.Message); Log.write(e.Message); } }