private void BackgroundWorker_DoWork(object sender, DoWorkEventArgs e) { (sender as BackgroundWorker)?.ReportProgress(5); Config co = new Config(); Dispatcher.BeginInvoke(DispatcherPriority.Normal, (ThreadStart) delegate() { co.Hostname = DbHost.Text; co.DbName = DbName.Text; co.DbUserName = DbUser.Text; co.DbUserPassword = DbPass.Text; co.AccountsLog = "1"; co.DrugsLog = "1"; co.Write(true, true); }); (sender as BackgroundWorker)?.ReportProgress(30); if (!Directory.Exists(Paths.BackupsPath)) { Directory.CreateDirectory(Paths.BackupsPath); } (sender as BackgroundWorker)?.ReportProgress(40); Dispatcher.Invoke((Action)(() => { DataHolder.CreateConnection(co.DbUserName, co.DbUserPassword, co.Hostname); CreateDB.Createdb(co.DbName); DataHolder.CreateConnection(co.DbUserName, co.DbUserPassword, co.DbName, co.Hostname); })); (sender as BackgroundWorker)?.ReportProgress(60); Dispatcher.Invoke((Action)(CreateDB.CreateTables)); (sender as BackgroundWorker)?.ReportProgress(95); }
private void Upgrade_Click(object sender, EventArgs e) { IniFile file = new IniFile(Constants.SetupConfigPath); if (this.Text == "تنصيب البرنامج") { if (!File.Exists(Constants.SetupConfigPath)) { file.Write("MySql", "Host", DBHost.Text); file.Write("MySql", "Username", DBUser.Text); file.Write("MySql", "Password", DBPass.Text); file.Write("MySql", "Database", DBName.Text); file.Write("Upgrade", "Version", System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString().Replace(".", "")); if (!Directory.Exists(Application.StartupPath + @"BackUp\")) { Directory.CreateDirectory(Application.StartupPath + @"\BackUp\"); } DataHolder.CreateConnection(Program.INIDecrypt(file.ReadString("MySql", "Username")), Program.INIDecrypt(file.ReadString("MySql", "Password")), Program.INIDecrypt(file.ReadString("MySql", "Host"))); DataHolder.CreateConnection(Program.INIDecrypt(file.ReadString("MySql", "Username")), Program.INIDecrypt(file.ReadString("MySql", "Password")), Program.INIDecrypt(file.ReadString("MySql", "Database")), Program.INIDecrypt(file.ReadString("MySql", "Host"))); CreateDB.UpgradeTables(); MessageBox.Show("تم الترقية بنجاح\nمن فضلك انشاء حساب جديد لتتمكن من الدخول"); Register reg = new Register(); reg.ShowDialog(); this.Close(); } } else if (this.Text == "اعدادات البرنامج") { Upgrade.Enabled = false; } }
//database private void SetB1_Click(object sender, RoutedEventArgs e) { Dispatcher.BeginInvoke(DispatcherPriority.Normal, (ThreadStart) delegate() { BackUp.NewDbBackup(); MessageBox.Show("تم اخذ نسخه احتياطيه من القاعده القديمه"); DataHolder.CreateConnection(co.DbUserName, co.DbUserPassword, co.Hostname); CreateDB.Createdb(co.DbName, DbName.Text); co.Write(); MessageBox.Show("تم الحفظ سيتم غلق البرنامج الان"); Environment.Exit(0); }); }
private void Install_Click(object sender, EventArgs e) { try { IniFile file = new IniFile(Constants.SetupConfigPath); if (this.Text == "تنصيب البرنامج") { if (!File.Exists(Constants.SetupConfigPath)) { file.Write("MySql", "Host", DBHost.Text); file.Write("MySql", "Username", DBUser.Text); file.Write("MySql", "Password", DBPass.Text); file.Write("MySql", "Database", DBName.Text); file.Write("Upgrade", "Version", System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString().Replace(".", "")); if (!Directory.Exists(Application.StartupPath + @"BackUp\")) { Directory.CreateDirectory(Application.StartupPath + @"\BackUp\"); } DataHolder.CreateConnection(Program.INIDecrypt(file.ReadString("MySql", "Username")), Program.INIDecrypt(file.ReadString("MySql", "Password")), Program.INIDecrypt(file.ReadString("MySql", "Host"))); CreateDB.Createdb(DBName.Text); DataHolder.CreateConnection(Program.INIDecrypt(file.ReadString("MySql", "Username")), Program.INIDecrypt(file.ReadString("MySql", "Password")), Program.INIDecrypt(file.ReadString("MySql", "Database")), Program.INIDecrypt(file.ReadString("MySql", "Host"))); CreateDB.CreateTables(); MessageBox.Show("تم تنصيب الاعدادات\nمن فضلك انشاء حساب جديد لتتمكن من الدخول"); Register reg = new Register(); reg.ShowDialog(); this.Close(); } } else if (this.Text == "اعدادات البرنامج") { if (File.Exists(Constants.SetupConfigPath)) { BackUp.NewDbBackup(); DataHolder.CreateConnection(Program.INIDecrypt(file.ReadString("MySql", "Username")), Program.INIDecrypt(file.ReadString("MySql", "Password")), Program.INIDecrypt(file.ReadString("MySql", "Host"))); CreateDB.Createdb(file.ReadString("MySql", "Database"), DBName.Text); file.Write("MySql", "Host", DBHost.Text); file.Write("MySql", "Username", DBUser.Text); file.Write("MySql", "Password", DBPass.Text); file.Write("MySql", "Database", DBName.Text); DataHolder.CreateConnection(Program.INIDecrypt(file.ReadString("MySql", "Username")), Program.INIDecrypt(file.ReadString("MySql", "Password")), Program.INIDecrypt(file.ReadString("MySql", "Database")), Program.INIDecrypt(file.ReadString("MySql", "Host"))); BackUp.NewDbRestore(); BillsTable.LBN(); MessageBox.Show("تم تغيير الاعدادات"); } } } catch (Exception ee) { Program.SaveException(ee); } }
private static void EngineThread_Execute() { try { IniFile file = new IniFile(Constants.SetupConfigPath); if (!File.Exists(Constants.SetupConfigPath)) { Setup set = new Setup { Text = "تنصيب البرنامج" }; set.ShowDialog(); } DataHolder.CreateConnection(INIDecrypt(file.ReadString("MySql", "Username")), INIDecrypt(file.ReadString("MySql", "Password")), INIDecrypt(file.ReadString("MySql", "Database")), INIDecrypt(file.ReadString("MySql", "Host"))); GC.Collect(); BillsTable.LBN(); } catch (Exception exception) { MessageBox.Show(exception.ToString()); File.Delete(Constants.SetupConfigPath); } }
/// <summary> /// The first thing that program is going to do after showing up /// like checking for database connection etc /// </summary> public static void StartUp_Engine() { if (!EngineOn) { try { IniFile file2 = new IniFile(Paths.BackupConfigPath); if (!File.Exists(Paths.SetupConfigPath)) { IsSetup = true; Set set = new Set { Title = "تنصيب البرنامج" }; set.ShowDialog(); } Config co = new Config(); co.Read(true); DataHolder.CreateConnection(co.DbUserName, co.DbUserPassword, co.DbName, co.Hostname); string ver = co.Version; if (Convert.ToInt16(ver) < Convert.ToInt16(Assembly.GetExecutingAssembly().GetName().Version.ToString().Replace(".", ""))) { IsSetup = true; //IsUpgrading = true; Set set = new Set { Title = "ترقية البرنامج" }; set.ShowDialog(); } if (!IsSetup) { co.Read(true, true); if (AccountsTable.CountUsers() == 0) { IsSetup = true; NoAccount = true; Set set = new Set { Title = "تنصيب البرنامج" }; View.Pages.Setup.IsInstallCompleted = true; set.ShowDialog(); } BillsTable.LBN(); MySqlCommand cmd = new MySqlCommand(MySqlCommandType.UPDATE); cmd.Update("logs").Set("Online", 0).Where("Online", 1).Execute(); sb = INIDecrypt(file2.ReadString("Settings", "Backup")); tb = INIDecrypt(file2.ReadString("Settings", "TakeBackup")); st = INIDecrypt(file2.ReadString("Settings", "Type")); stt = INIDecrypt(file2.ReadString("Settings", "Time")); std = INIDecrypt(file2.ReadString("Settings", "Date")); #region database logs if (co.AccountsLog == "0") { View.Pages.Settings.IsRecAcc = false; } else if (co.AccountsLog == "1") { View.Pages.Settings.IsRecAcc = true; } if (co.DrugsLog == "0") { View.Pages.Settings.IsRecMed = false; } else if (co.DrugsLog == "1") { View.Pages.Settings.IsRecMed = true; } #endregion #region automatic backup system if (File.Exists(Paths.BackupConfigPath)) { try { if (Convert.ToByte(sb) == 1) { if (Convert.ToByte(st) == 1) { string[] time = stt.Split(':'); if (Convert.ToByte(tb) == 0) { if (DateTime.Now.Date == Convert.ToDateTime(std)) { if (DateTime.Now.Hour - Convert.ToByte(time[0]) == 0 && DateTime.Now.Minute - Convert.ToByte(time[1]) >= 0) { BackUp.Backup("PROPHMW"); file2.Write("Settings", "TakeBackup", "1"); tb = "1"; Console.WriteLine("Daily backup has been taken"); } if (DateTime.Now.Hour - Convert.ToByte(time[0]) >= 1) { BackUp.Backup("PROPHMW"); file2.Write("Settings", "TakeBackup", "1"); tb = "1"; Console.WriteLine("Daily backup has been taken"); } } } else { if (DateTime.Now.Date > Convert.ToDateTime(std)) { file2.Write("Settings", "TakeBackup", "0"); tb = "0"; Console.WriteLine("Daily backup has been reset"); } } } else if (Convert.ToByte(st) == 2) { if (Convert.ToByte(tb) == 0) { if (Convert.ToByte(stt) <= Convert.ToByte(DateTime.Now.DayOfWeek)) { BackUp.Backup("PROPHMW"); file2.Write("Settings", "TakeBackup", "1"); tb = "1"; Console.WriteLine("Weekly backup has been taken"); } } else { if (Convert.ToByte(stt) > Convert.ToByte(DateTime.Now.DayOfWeek)) { file2.Write("Settings", "TakeBackup", "0"); tb = "0"; Console.WriteLine("Weekly backup has been reset"); } } } else if (Convert.ToByte(st) == 3) { if (Convert.ToByte(tb) == 0) { if (Convert.ToByte(stt) <= Convert.ToByte(DateTime.Now.Day)) { BackUp.Backup("PROPHMW"); file2.Write("Settings", "TakeBackup", "1"); tb = "1"; Console.WriteLine("Monthly backup has been taken"); } } else { if (Convert.ToByte(stt) > Convert.ToByte(DateTime.Now.Day)) { file2.Write("Settings", "TakeBackup", "0"); tb = "0"; Console.WriteLine("Monthly backup has been reset"); } } } } } catch (Exception e) { Console.WriteLine("Check the automatic backup system in the core"); SaveException(e); File.Delete(Paths.BackupConfigPath); } } #endregion EngineOn = true; } } catch (Exception ex) { SaveException(ex); if (File.Exists(Paths.SetupConfigPath)) { File.Delete(Paths.SetupConfigPath); } if (File.Exists(Paths.BackupConfigPath)) { File.Delete(Paths.BackupConfigPath); } Console.WriteLine("Program configuration files has been deleted \r\n now we are goning to shutdown your PC"); } } }
private void UpgradeB_Click(object sender, RoutedEventArgs e) { //TODO add upgrade codes for older versions PB.Visibility = Visibility.Visible; IniFile file = new IniFile(Paths.SetupConfigPath); Config co = new Config(); co.Read(); DataHolder.CreateConnection(co.DbUserName, co.DbUserPassword, co.DbName, co.Hostname); Dispatcher.BeginInvoke(DispatcherPriority.Normal, (ThreadStart) delegate() { #region PPHM Normal(windows form) Verison Upgrade Codes if (PPHMCB.IsChecked == true) { if (PPHMV.SelectedIndex >= -1 && PPHMV.SelectedIndex <= 13) { MessageBox.Show("لا يمكن الترقية من هذا الاصدار بعد"); Console.WriteLine("Codes needed report to developer."); } else if (PPHMV.SelectedIndex == 14) { const string accountst = "ALTER TABLE `accounts` CHANGE `Username` `Username` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL FIRST, CHANGE `Password` `Password` TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, CHANGE `State` `State` tinyint(5) UNSIGNED NOT NULL DEFAULT 0 AFTER `Password`, CHANGE `Phone` `Phone` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `State`, DROP `LastCheck`;"; const string bills = "ALTER TABLE `bills` CHANGE `Name` `ClientName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `ID`, CHANGE `User` `Cashier` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `ClientName`, CHANGE `Medic` `Medics` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL AFTER `Cashier`;"; const string logs = "ALTER TABLE `logs` CHANGE `Account` `Username` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL FIRST, ADD `Online` tinyint(5) UNSIGNED NOT NULL DEFAULT 0 AFTER `LogoutDate`, MODIFY COLUMN `LoginDate` datetime NOT NULL AFTER `Username`, MODIFY COLUMN `LogoutDate` datetime NULL DEFAULT NULL AFTER `LoginDate`;"; const string medics = "ALTER TABLE `medics` ADD `Barcode` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `Name`, CHANGE `Count` `Total` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `Type`, ADD `BPrice` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `Total`, CHANGE `Price` `SPrice` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `BPrice`, CHANGE `Substance` `ScientificName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL AFTER `Barcode`, CHANGE `Expiry` `ExpirationDate` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '0' AFTER `ScientificName`, CHANGE `Note` `Notes` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL AFTER `SPrice`, ADD COLUMN `Id` bigint(20) unsigned NOT NULL AUTO_INCREMENT FIRST ,DROP PRIMARY KEY, ADD PRIMARY KEY(`Id`, `Name`), ADD COLUMN `Supplier` varchar(50) NULL AFTER `ScientificName`;"; const string medlog = "ALTER TABLE `medlog` CHANGE `Name` `MedName` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL FIRST, CHANGE `Total` `TotalAmount` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `SellDate`, CHANGE `Cost` `TotalPrice` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `TotalAmount`, ADD `Cashier` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL AFTER `TotalPrice`;"; const string suppliers = "CREATE TABLE `suppliers`(`Id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT , `Name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `Salesman` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, `Phones` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL, `Notes` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL, PRIMARY KEY (`Id`), UNIQUE INDEX `Name` (`Name`) USING BTREE)ENGINE=InnoDB DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci ROW_FORMAT=Compact;"; try { using (var conn = DataHolder.MySqlConnection) { using (MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand()) { cmd.Connection = conn; conn.Open(); CDfcts(); QueryExpress.ExecuteScalarStr(cmd, accountst + bills + logs + medics + medlog + suppliers); conn.Dispose(); conn.Close(); } } } catch (Exception ex) { Console.WriteLine("Now you are gonne need to fix this problem manually ;p"); Core.SaveException(ex); MessageBox.Show("هناك مشكله غالبا بسبب انك اختارت اصدار خاطئ\nاتصل بالمطور لحل المشكله"); Environment.Exit(0); } IsUpgradeComp = true; } } #endregion #region PPHM W(WPF) Verison Upgrade Codes else if (PPHMWCB.IsChecked == true) { if (PPHMWV.SelectedIndex == -1) { MessageBox.Show("اختر اصدار للترقية منه اولا"); return; } else if (PPHMWV.SelectedIndex == 0) { //0.9.9.1 const string logs = "ALTER TABLE `logs` CHANGE `Username` `Username` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL FIRST, MODIFY COLUMN `LoginDate` datetime NOT NULL AFTER `Username`, MODIFY COLUMN `LogoutDate` datetime NULL DEFAULT NULL AFTER `LoginDate`;"; const string medics = "ALTER TABLE `medics` CHANGE `ActivePrinciple` `ScientificName` VARCHAR(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL, CHANGE `Total` `Total` decimal(15,2) UNSIGNED NOT NULL DEFAULT '0.00' AFTER `Type`, ADD `BPrice` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `Total`, CHANGE `Price` `SPrice` decimal(15,2) UNSIGNED NOT NULL DEFAULT '0.00' AFTER `BPrice`, ADD COLUMN `Id` bigint(20) unsigned NOT NULL AUTO_INCREMENT FIRST ,DROP PRIMARY KEY, ADD PRIMARY KEY(`Id`, `Name`), ADD COLUMN `Supplier` varchar(50) NULL AFTER `ScientificName`;"; const string medlog = "ALTER TABLE `medlog` CHANGE `Cashier` `Cashier` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL AFTER `TotalPrice`, CHANGE `TotalAmount` `TotalAmount` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `SellDate`, CHANGE `TotalPrice` `TotalPrice` decimal(15,2) UNSIGNED NOT NULL DEFAULT 0.00 AFTER `TotalAmount`;"; const string suppliers = "CREATE TABLE `suppliers` (`Id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT ,`Name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , `Salesman` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , `Phones` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,`Notes` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,PRIMARY KEY (`Id`), UNIQUE INDEX `Name` (`Name`) USING BTREE )ENGINE=InnoDB DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci ROW_FORMAT=Compact;"; try { using (var conn = DataHolder.MySqlConnection) { using (MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand()) { cmd.Connection = conn; conn.Open(); CDfcts(); QueryExpress.ExecuteScalarStr(cmd, logs + medics + medlog + suppliers); conn.Dispose(); conn.Close(); } } } catch (Exception ex) { Console.WriteLine("Now you are gonne need to fix this problem manually ;p"); Core.SaveException(ex); MessageBox.Show("هناك مشكله غالبا بسبب انك اختارت اصدار خاطئ\nاتصل بالمطور لحل المشكله"); Environment.Exit(0); } } else if (PPHMWV.SelectedIndex == 1) { //0.9.9.5 const string logs = "ALTER TABLE `logs` CHANGE `Username` `Username` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL FIRST, MODIFY COLUMN `LoginDate` datetime NOT NULL AFTER `Username`, MODIFY COLUMN `LogoutDate` datetime NULL DEFAULT NULL AFTER `LoginDate`;"; const string medics = "ALTER TABLE `medics` ADD COLUMN `Id` bigint(20) unsigned NOT NULL AUTO_INCREMENT FIRST ,DROP PRIMARY KEY, ADD PRIMARY KEY(`Id`, `Name`), ADD COLUMN `Supplier` varchar(50) NULL AFTER `ScientificName`;"; const string suppliers = "CREATE TABLE `suppliers` (`Id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT ,`Name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , `Salesman` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , `Phones` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,`Notes` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,PRIMARY KEY (`Id`), UNIQUE INDEX `Name` (`Name`) USING BTREE)ENGINE=InnoDB DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci ROW_FORMAT=Compact;"; try { using (var conn = DataHolder.MySqlConnection) { using (MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand()) { cmd.Connection = conn; conn.Open(); CDfcts(); QueryExpress.ExecuteScalarStr(cmd, logs + medics + suppliers); conn.Dispose(); conn.Close(); } } } catch (Exception ex) { Console.WriteLine("Now you are gonne need to fix this problem manually ;p"); Core.SaveException(ex); MessageBox.Show("هناك مشكله غالبا بسبب انك اختارت اصدار خاطئ\nاتصل بالمطور لحل المشكله"); Environment.Exit(0); } } else if (PPHMWV.SelectedIndex == 2) { //0.9.9.6 const string logs = "ALTER TABLE `logs` CHANGE `Username` `Username` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL FIRST, MODIFY COLUMN `LoginDate` datetime NOT NULL AFTER `Username`, MODIFY COLUMN `LogoutDate` datetime NULL DEFAULT NULL AFTER `LoginDate`;"; const string medics = "ALTER TABLE `medics` ADD COLUMN `Id` bigint(20) unsigned NOT NULL AUTO_INCREMENT FIRST ,DROP PRIMARY KEY, ADD PRIMARY KEY(`Id`, `Name`), ADD COLUMN `Supplier` varchar(50) NULL AFTER `ScientificName`;"; const string suppliers = "CREATE TABLE `suppliers` (`Id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT ,`Name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , `Salesman` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL , `Phones` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,`Notes` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL ,PRIMARY KEY (`Id`), UNIQUE INDEX `Name` (`Name`) USING BTREE )ENGINE=InnoDB DEFAULT CHARACTER SET=utf8 COLLATE=utf8_general_ci ROW_FORMAT=Compact;"; try { using (var conn = DataHolder.MySqlConnection) { using (MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand()) { cmd.Connection = conn; conn.Open(); CDfcts(); QueryExpress.ExecuteScalarStr(cmd, medics + logs + suppliers); conn.Dispose(); conn.Close(); } } } catch (Exception ex) { Console.WriteLine("Now you are gonne need to fix this problem manually ;p"); Core.SaveException(ex); MessageBox.Show("هناك مشكله غالبا بسبب انك اختارت اصدار خاطئ\nاتصل بالمطور لحل المشكله" + ex.ToString()); Environment.Exit(0); } } IsUpgradeComp = true; } #endregion #region PPHM WL(sqlite db) Verison Upgrade Codes else if (PPHMWLCB.IsChecked == true) { if (PPHMWLV.SelectedIndex == 0) { MessageBox.Show("لا يمكن الترقية من هذا الاصدار بعد"); return; } } #endregion co.Write(false, true, false, false); PB.Visibility = Visibility.Collapsed; }); }