//Verification de l'etat de la dernière sauvegarde //Si les condition necessaire au lancement d'une sauvegarde sont reunies //aret du timer //demande de report de la sauvegarde //Si oui : redemarrage du timer //si non : //activation de l'autologon //sauvegarde de l'etat de l'autologon à true //lancement du redémarrage de l'ordinateur private void myTimer_Tick(object sender, EventArgs e) { this.MoveCursor(this.j); sauvegarde.SetTempsRestant(sauvegarde.GetNextSave() - DateTime.Now); if (sauvegarde.checkSaveConditions()) { this.myTimer.Stop(); ReportSaveForm rsf = new ReportSaveForm(this, sauvegarde); DialogResult = rsf.ShowDialog(); if (DialogResult == System.Windows.Forms.DialogResult.OK) { sauvegarde.SetNextSave(rsf.getNextSave()); this.lbDateProchaineSauvegarde1.Text = sauvegarde.GetNextSave().ToShortDateString() + " à " + c.getHeure() + "h" + c.getMinute(); this.myTimer.Start(); } else { RegistryModifier.enableAutoLogon(ConfigurationManager.AppSettings["password"]); this.isAutoLogonEnabled = true; Serialization.serialize(this.isAutoLogonEnabled); Save.restartComputer(); } } if (sauvegarde.GetTempsRestant().Days == 0 && sauvegarde.GetTempsRestant().Hours < 15) { ShutdownBlockReasonCreate(this.Handle, "Une sauvegarde automatique va être éffectuée à " + sauvegarde.GetNextSave().ToShortTimeString() + "." + Environment.NewLine + " Veuillez ne pas éteindre l'ordinateur"); } else { shutdownBlockReasonDestroy(this.Handle, "Arrêt autorisé"); } }
//Si l'utilisateur accepte le redémarrage de l'ordinateur //activation de l'autologon //sauvegarde de l'etat de l'autologon à true //redémarrage de l'ordinateur private void btnSave_Click(object sender, EventArgs e) { if (MessageBox.Show("La sauvegarde necessite le redemarrage de l'ordinateur, voulez-vous redémarrer maintenant?", " ", MessageBoxButtons.YesNo) == DialogResult.Yes) { RegistryModifier.enableAutoLogon(ConfigurationManager.AppSettings["password"]); this.isAutoLogonEnabled = true; Serialization.serialize(this.isAutoLogonEnabled); Save.restartComputer(); } }