public static void CreateLocalDatabaseFile() { // Nějaké pozůstatky z předchozí instalace string path = (System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "PASS")); if (Directory.Exists(path)) { System.Windows.MessageBoxResult result = MessageBox.Show("Na tomto počítači byla nalezena databáze předchozí instalace této aplikace - adresář: " + System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "PASS") + Environment.NewLine + "Pokračováním budou tato data ztracena. Volbou 'ne' budou všechna data zachována.", "Varování", MessageBoxButton.YesNo, MessageBoxImage.Exclamation); if (result == MessageBoxResult.Yes) { // Smazat všechen obsah složky PASS DirectoryInfo dir = new DirectoryInfo(path); dir.Delete(true); //Vytvořit složku AppData Directory.CreateDirectory(System.IO.Path.Combine(path, "AppData")); // Vytvořit data v adresáři System.IO.File.Copy("AppData/Database.mdf", System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "PASS", "AppData", "Database.mdf")); System.IO.File.Copy("AppData/Database_log.ldf", System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "PASS", "AppData", "Database_log.ldf")); try { DatabaseSetup.SetupDatabase(); } catch (Exception ex) { // DialogHelper.ShowWarning("Nová databázová struktura nebyla vytvořena. Původní data zůstala nezměněna."); DialogHelper.ShowError(ex.Message); } } } else // Čistá instalace { Directory.CreateDirectory(System.IO.Path.Combine(path, "AppData")); // Vytvoří nadsložku PASS a podsložku AppData zároveň // Vytvořit data v adresáři System.IO.File.Copy("AppData/Database.mdf", System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "PASS", "AppData", "Database.mdf")); System.IO.File.Copy("AppData/Database_log.ldf", System.IO.Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "PASS", "AppData", "Database_log.ldf")); try { DatabaseSetup.SetupDatabase(); } catch (Exception ex) { // DialogHelper.ShowWarning("Nová databázová struktura nebyla vytvořena. Původní data zůstala nezměněna."); DialogHelper.ShowError(ex.Message); } } }