コード例 #1
0
        protected override void Execution(object sender = null, DoWorkEventArgs e = null)
        {
            Process.Start("net session /delete /y");

            KillProcess1CCommon ActionKill = new KillProcess1CCommon(Id);

            ActionKill.ActRun();

            Thread.Sleep(3000);

            MagicUpdaterCommon.CommonActions.StartWithParameter1C act = new MagicUpdaterCommon.CommonActions.StartWithParameter1C(Id, MagicUpdaterCommon.SettingsTools.Parameters1C.CmdParams1C.UpdateAndPrintLog);             // параметр обновицца и записать лог
            act.ActRun();

            if (!act.NewProc.HasExited)
            {
                act.NewProc.WaitForExit(60000 * 7);
            }

            if (!act.NewProc.HasExited)
            {
                throw new Exception("Процесс конфигуратора не завершился после 7 минут ожидания. Обновление не выполнено.");
            }

            new SendLogsToCenter1CCommon(Id).ActRun();             // Собираем и отправляем в центр логи
        }
コード例 #2
0
        protected override void Execution(object sender = null, DoWorkEventArgs e = null)
        {
            new ExecProcessing1CAction(Id, "ОбменСЦентром.epf", 10).ActRun();

            //Грохаем все «1cv8c.exe» на всех компах в сети
            KillProcess1CCommon ActionKill = new KillProcess1CCommon(Id);

            ActionKill.ActRun(true, false, 7000);

            Thread.Sleep(3000);

            try
            {
                SetLockBackgroundJobsOnServer1C(true);                 //Блокировка фоновых заданий на сервере 1С
            }
            catch (Exception ex)
            {
                NLogger.LogErrorToBaseOrHdd(MainSettings.MainSqlSettings.ComputerId, ex.Message.ToString());
            }

            try
            {
                KillUsers();                 //Убийство всех сеансов на сервере 1С
            }
            catch (Exception ex)
            {
                NLogger.LogErrorToBaseOrHdd(MainSettings.MainSqlSettings.ComputerId, ex.Message.ToString());
            }

            try
            {
                Restart1CServer();
            }
            catch (Exception ex)
            {
                NLogger.LogErrorToBaseOrHdd(MainSettings.MainSqlSettings.ComputerId, ex.Message.ToString());
            }

            try
            {
                UpdateBase1C();                 //Обновление базы
            }
            catch (Exception ex)
            {
                NLogger.LogErrorToBaseOrHdd(MainSettings.MainSqlSettings.ComputerId, ex.Message.ToString());
            }

            try
            {
                SetLockBackgroundJobsOnServer1C(false);                 //Блокировка фоновых заданий на сервере 1С
            }
            catch (Exception ex)
            {
                NLogger.LogErrorToBaseOrHdd(MainSettings.MainSqlSettings.ComputerId, ex.Message.ToString());
            }

            new SendLogsToCenter1CCommon(Id).ActRun();             //Сбор лога и отправка в центр
        }