Beispiel #1
0
        public void StartService()
        {
            // initializing the necessary directories
            bool dirsExist;    // necessary directories exist
            bool logDirExists; // There are log files directory

            mainLogic.InitAppDirs(out dirsExist, out logDirExists);
        }
Beispiel #2
0
        public void OnStart(string[] args)
        {
            // инициализация необходимых директорий
            bool dirsExist;    // необходимые директории существуют
            bool logDirExists; // директория log-файлов существует

            mainLogic.InitAppDirs(out dirsExist, out logDirExists);

            if (logDirExists)
            {
                appLog.WriteBreak();
                appLog.WriteAction(Localization.UseRussian ? "Служба ScadaServerService запущена" :
                                   "ScadaServerService is started", Log.ActTypes.Action);
            }

            if (dirsExist)
            {
                // локализация ScadaData.dll
                if (!Localization.UseRussian)
                {
                    string errMsg;
                    if (Localization.LoadDictionaries(mainLogic.LangDir, "ScadaData", out errMsg))
                    {
                        CommonPhrases.Init();
                    }
                    else
                    {
                        appLog.WriteAction(errMsg, Log.ActTypes.Error);
                    }
                }

                // запуск работы SCADA-Сервера
                if (!mainLogic.Start())
                {
                    appLog.WriteAction(Localization.UseRussian ? "Нормальная работа программы невозможна." :
                                       "Normal program execution is impossible.", Log.ActTypes.Error);
                }
                else
                {
                    checkThread.Start();
                }
            }
            else
            {
                string errMsg = string.Format(Localization.UseRussian ?
                                              "Не существуют необходимые директории:\r\n{0}\r\n{1}\r\n{2}\r\n{3}\r\n" +
                                              "Нормальная работа программы невозможна." :
                                              "Required directories are not exist:\r\n{0}\r\n{1}\r\n{2}\r\n{3}\r\n" +
                                              "Normal program execution is impossible.",
                                              mainLogic.ConfigDir, mainLogic.LangDir, mainLogic.LogDir, mainLogic.ModDir);

                try
                {
                    if (EventLog.SourceExists("ScadaServerService"))
                    {
                        EventLog.WriteEvent("ScadaServerService",
                                            new EventInstance(0, 0, EventLogEntryType.Warning), errMsg);
                    }
                }
                catch { }

                if (logDirExists)
                {
                    appLog.WriteAction(errMsg, Log.ActTypes.Error);
                }
            }
        }
Beispiel #3
0
        /// <summary>
        /// Запустить службу
        /// </summary>
        public void StartService()
        {
            // инициализация необходимых директорий
            bool dirsExist;    // необходимые директории существуют
            bool logDirExists; // директория log-файлов существует

            mainLogic.InitAppDirs(out dirsExist, out logDirExists);

            if (logDirExists)
            {
                appLog.WriteBreak();
                appLog.WriteAction(string.Format(Localization.UseRussian ?
                                                 "Служба ScadaServerService {0} запущена" :
                                                 "ScadaServerService {0} is started", ServerUtils.AppVersion), Log.ActTypes.Action);
            }

            if (dirsExist)
            {
                // локализация приложения
                string errMsg;
                if (Localization.LoadDictionaries(mainLogic.AppDirs.LangDir, "ScadaData", out errMsg))
                {
                    CommonPhrases.Init();
                }
                else
                {
                    appLog.WriteAction(errMsg, Log.ActTypes.Error);
                }

                if (Localization.LoadDictionaries(mainLogic.AppDirs.LangDir, "ScadaServer", out errMsg))
                {
                    ModPhrases.InitFromDictionaries();
                }
                else
                {
                    appLog.WriteAction(errMsg, Log.ActTypes.Error);
                }

                // запуск работы SCADA-Сервера
                if (!mainLogic.Start())
                {
                    appLog.WriteAction(Localization.UseRussian ?
                                       "Нормальная работа программы невозможна." :
                                       "Normal program execution is impossible.", Log.ActTypes.Error);
                }
            }
            else
            {
                string errMsg = string.Format(Localization.UseRussian ?
                                              "Не существуют необходимые директории:{0}{1}{0}{2}{0}{3}{0}{4}{0}" +
                                              "Нормальная работа программы невозможна." :
                                              "Required directories are not exist:{0}{1}{0}{2}{0}{3}{0}{4}{0}" +
                                              "Normal program execution is impossible.",
                                              Environment.NewLine, mainLogic.AppDirs.ConfigDir, mainLogic.AppDirs.LangDir,
                                              mainLogic.AppDirs.LogDir, mainLogic.AppDirs.ModDir);

                try
                {
                    if (EventLog.SourceExists("ScadaServerService"))
                    {
                        EventLog.WriteEvent("ScadaServerService",
                                            new EventInstance(0, 0, EventLogEntryType.Error), errMsg);
                    }
                }
                catch { }

                if (logDirExists)
                {
                    appLog.WriteAction(errMsg, Log.ActTypes.Error);
                }
            }
        }