コード例 #1
0
        private void Settings_Load(object sender, EventArgs e)
        {
            tbMitelDataLogPath.Text = MiConfig.GetLogPath();

            cbShowDebug.Checked         = MiConfig.GetShowDebug();
            cbConnectOnStartup.Checked  = MiConfig.GetConnectOnStartup();
            cbShowNotifications.Checked = MiConfig.GetShowNotifications();
            cbShowSplash.Checked        = MiConfig.GetShowSplash();
            cbMinimiseToTray.Checked    = MiConfig.GetMinimiseToTray();

            //Get the registry setting
            RegistryKey rkApp = Registry.CurrentUser.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run", true);

            if (rkApp.GetValue("MiSMDR") == null)
            {
                cbStartWithWindows.Checked = false;
            }
            else
            {
                cbStartWithWindows.Checked = true;
            }

            //Load the database strings
            string[] pieces = MiConfig.GetConnectionString("MiDatabaseString").Split(new string[] { ";" }, StringSplitOptions.None);
            tbCallRecordLoc.Text = pieces[0].Remove(0, 12);
            pieces                 = MiConfig.GetConnectionString("MiDemoString").Split(new string[] { ";" }, StringSplitOptions.None);
            tbDemoRecords.Text     = pieces[0].Remove(0, 12);
            tbCallRecordLimit.Text = MiConfig.GetRecordLimit().ToString();
        }
コード例 #2
0
        private void afterLoad()
        {
            string myDocs = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);

            //first thing is to see if the config is new
            if (MiConfig.GetProvider() != DataProvider.Sqlite)
            {
                this.SetText("Updating configuration file");
                MiConfig.buildDefaultConfigFile(_configPath); //rebuild it just in case
                MiConfig.SetProvider(DataProvider.Sqlite);
            }

            if (MiConfig.GetProvider() != DataProvider.Sqlite)
            {
                //CHECK AGAIN - this is to make sure the config file is in a writable location
                this.SetText("Unable to create a config file. Please contact the MiSMDR support team at [email protected]");
            }

            if ((MiConfig.GetConnectionString("MiDatabaseString") == "notinstalled") || (MiConfig.GetConnectionString("MiDemoString") == "notinstalled"))
            {
                CheckMiSMDRFolder();

                //now we need to check the demo file location
                if (MiConfig.GetConnectionString("MiDemoString") == "notinstalled")
                {
                    BuildDemoFile();
                }

                if (MiConfig.GetConnectionString("MiDatabaseString") == "notinstalled")
                {
                    BuildMitelFile();
                }
            }

            if (MiConfig.GetLogPath() == "notinstalled")
            {
                this.SetText("Checking Mitel Data log file");
                string dataLogPath = myDocs + "\\MiSMDR\\MitelData_Log.txt";
                MiConfig.SetLogPath(dataLogPath);
            }

            DBControl demoChecker = new DBControl(MiConfig.GetConnectionString("MiDemoString"), MiConfig.GetProvider());
            DBControl liveChecker = new DBControl(MiConfig.GetConnectionString("MiDatabaseString"), MiConfig.GetProvider());

            this.SetText("Configuration looks ok");
            this.SetText("Checking Database access");
            if (!demoChecker.CheckDataAccess())
            {
                this.SetText("Demo Database looks ok");
                CheckMiSMDRFolder(); //check the folder exists
                BuildDemoFile();
            }
            if (!liveChecker.CheckDataAccess())
            {
                this.SetText("Mitel Database looks ok");
                CheckMiSMDRFolder();
                BuildMitelFile();
            }

            //Load MiSMDR main
            CheckProgressBar();
            HideSplash();
            MiSMDR.MiForm.customStart(_popup, _trialStatus);
            CloseSplash(); //after the MiForm is closed then kill the App
        }