private void importaDatabaseToolStripMenuItem_Click(object sender, EventArgs e) { //blocca le operazioni sul db inswap = true; var res = importadb.ShowDialog(); if (res == DialogResult.OK) { //per l'importazione, chiudi tutte le connessioni della classe e... //...libera tutte le risorse ed il pool, per liberare il file dal processo db.forceClose(); //sovrascrivi il database con il file scelto dall'utente System.IO.File.Copy( importadb.FileName, db.getPercorsoFileDatabase(), true ); //ricarica la classe, fai le prove di init e ricarica la tabella db = new GestoreDatabase(); db.initDatabase(); //sblocca le operazioni sul db inswap = false; refresh(); tickEvent(true); } }
private void finestraCaricata(object sender, EventArgs e) { //inizializzazione delle cartelle e file func.initAppdataFolder(); if (!db.initDatabase()) { //errore di init, chiudi app e mostra messaggio errore errore("Inizializzazione del database fallita, l'applicazione verrà terminata adesso"); this.Close(); } refresh(); //refresh tabella refresher.Start(); tickEvent(); //fa partire manualmente il primo tick per le operazioni di refresh riga verde e autolink confermaOpenCk.Checked = func.getImpostazioneNoConf(); autostart_check.Checked = func.getImpostazioneAutostart(); }