/// <summary> /// Database initialization checks /// </summary> #region Database initialization checks public static void DBInitializationChecks() { if (!File.Exists(Settings.sqlFile())) { SQLStorage db = new SQLStorage(); db.createDB(); } }
/// <summary> /// Get parameters from DB /// </summary> #region Get parameters from DB public static string retrievePar(string parameter) { if (!File.Exists(Settings.sqlFile())) { SQLStorage db = new SQLStorage(); db.createDB(); } generic_connection.Open(); string command = "select value from config where parameter='" + parameter + "';"; SqliteCommand cmd = new SqliteCommand(command, generic_connection); string result = cmd.ExecuteScalar().ToString(); generic_connection.Close(); return(result); }
/// <summary> /// Database initialization checks /// </summary> #region Database initialization checks public static void DBInitializationChecks() { try { string sqliteFile = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData) + "\\Software\\endpoint.db3"; string MSIConfigFilePath = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData) + "\\Software\\configApp.xml"; if (!File.Exists(sqliteFile) && File.Exists(MSIConfigFilePath)) { // Read MSI config file XPathDocument configMSI = new XPathDocument(MSIConfigFilePath); XPathNavigator navConfigMSI = configMSI.CreateNavigator(); globalConfigParams.serverAddress = InstallerClass.DecRijndaelMSI(navConfigMSI.SelectSingleNode("/ConfigParameters/address").ToString()).Replace("\0", String.Empty); globalConfigParams.serverIP = InstallerClass.DecRijndaelMSI(navConfigMSI.SelectSingleNode("/ConfigParameters/ip").ToString()).Replace("\0", String.Empty); globalConfigParams.textAnalytics = InstallerClass.DecRijndaelMSI(navConfigMSI.SelectSingleNode("/ConfigParameters/pcenabled").ToString()).Replace("\0", String.Empty); globalConfigParams.aesKey = InstallerClass.DecRijndaelMSI(navConfigMSI.SelectSingleNode("/ConfigParameters/cryptkey").ToString()).Replace("\0", String.Empty); globalConfigParams.aesIV = InstallerClass.DecRijndaelMSI(navConfigMSI.SelectSingleNode("/ConfigParameters/cryptkey").ToString()).Replace("\0", String.Empty); globalConfigParams.serverPassword = InstallerClass.DecRijndaelMSI(navConfigMSI.SelectSingleNode("/ConfigParameters/srvpwd").ToString()).Replace("\0", String.Empty); globalConfigParams.excludedApps = InstallerClass.DecRijndaelMSI(navConfigMSI.SelectSingleNode("/ConfigParameters/apps").ToString()).Replace("\0", String.Empty); SQLStorage db = new SQLStorage(); db.CreateDB(); Filesystem.WriteLog("INFO : Internal database created from MSI config file"); } else if (!File.Exists(sqliteFile) && !File.Exists(MSIConfigFilePath)) { Filesystem.WriteLog("ERROR : Internal database and MSI config file doesn't exist, please run MSI Installer"); Environment.Exit(0); } else { Filesystem.WriteLog("INFO : User DB3 database found, continue"); } } catch (Exception ex) { Filesystem.WriteLog("ERROR : Exception trown in Database check procedure : " + ex); } }
/// <summary> /// Set parameters in DB /// </summary> #region Set parameters in DB public static void modifyPar(string command, string variable_with_value, string uniqueID) { if (!File.Exists(Settings.sqlFile())) { SQLStorage db = new SQLStorage(); db.createDB(); } string[] variable_and_parameter = variable_with_value.Split(' '); string variable = variable_and_parameter[0]; string value = variable_and_parameter[variable_and_parameter.Length - 1]; generic_connection.Open(); string SQLcommand = "update config set value='" + value + "' where parameter='" + variable + "';"; SqliteCommand cmd = new SqliteCommand(SQLcommand, generic_connection); cmd.ExecuteNonQuery(); generic_connection.Close(); // Inform that the command was received Network.SendData(variable + " changed!", command, uniqueID, 1); }