public Conf1CClass(Conf1CUpdateSettings conf1CSettings)
        {
            this.ConfSettings = conf1CSettings;

            this.fullDownloadDirectory = Path.Combine(AppSettings.settings.DownloadDirectory, conf1CSettings.DownloadDirectory);
            if (!Directory.Exists(this.fullDownloadDirectory))
            {
                Directory.CreateDirectory(this.fullDownloadDirectory);
            }

            Common.Log($"--------------------------------------------------------------------------------", ConsoleColor.Yellow);

            FillExistingUpdatesInfo();
            FillAllUpdatesInfo();

            RestoreExistingUpdatesSequence();
        }
        public static void UpdatePlatform(Conf1CUpdateSettings confSettings, string lastConfVersion)
        {
            Common.Log($"--------------------------------------------------------------------------------", ConsoleColor.Yellow);
            Common.Log($"Получение версии последней платформы...");

            try
            {
                UpdatePlatformReference.PlatformUpdateInfoRequest platformInfoRequest = new UpdatePlatformReference.PlatformUpdateInfoRequest();
                platformInfoRequest.configurationName = confSettings.ConfName;
                platformInfoRequest.versionNumber     = lastConfVersion;

                platformInfoRequest.additionalParameters = new UpdatePlatformReference.MapElements[1];
                UpdatePlatformReference.MapElements param = new UpdatePlatformReference.MapElements();
                param.key   = "PlatformVersion";
                param.value = "";
                platformInfoRequest.additionalParameters.SetValue(param, 0);

                UpdatePlatformReference.UpdatePlatformApiClient client = new UpdatePlatformReference.UpdatePlatformApiClient();

                UpdatePlatformReference.PlatformUpdateInfoResult platformInfoResult = client.getPlatformUpdateInfo(platformInfoRequest);
                if (platformInfoResult == null)
                {
                    Common.Log($"Не удалось получить информацию об обновлении платформы для конфигурации {confSettings.ConfName} {lastConfVersion}", ConsoleColor.Red);
                    return;
                }
                if (platformInfoResult.errorMessage != "")
                {
                    Common.Log($"Сервер обновлений вернул ошибку {platformInfoResult.errorName} {platformInfoResult.errorMessage}", ConsoleColor.Red);
                    return;
                }
                if (!Common.CheckPlatformUpdateNecessity(AppSettings.settings.DownloadDirectory, platformInfoResult.platformVersion))
                {
                    Common.Log($"Последняя версия платформы ({platformInfoResult.platformVersion}) уже получена.", ConsoleColor.Green);
                    return;
                }

                Common.Log($"Получение новой версии платформы: {platformInfoResult.platformVersion}...");

                UpdatePlatformReference.PlatformUpdateRequest platformRequest = new UpdatePlatformReference.PlatformUpdateRequest();
                platformRequest.login           = confSettings.Users1CLogin;
                platformRequest.password        = confSettings.Users1CPassword;
                platformRequest.distributionUin = platformInfoResult.distributionUin;

                UpdatePlatformReference.PlatformUpdateResult platformResult = client.getPlatformUpdate(platformRequest);
                if (platformResult == null)
                {
                    Common.Log($"Не удалось получить ссылку для получения обновления платформы!", ConsoleColor.Red);
                    return;
                }
                if (platformResult.errorMessage != "")
                {
                    Common.Log($"Сервер обновлений вернул ошибку {platformResult.errorName} {platformResult.errorMessage}", ConsoleColor.Red);
                    return;
                }

                using (WebClient wc = new WebClient())
                {
                    lastDownloadPercent = 0;
                    string downloadPath = Path.Combine(AppSettings.settings.DownloadDirectory, platformInfoResult.platformVersion);
                    if (!Directory.Exists(downloadPath))
                    {
                        Directory.CreateDirectory(downloadPath);
                    }
                    string downloadFileName = Path.Combine(downloadPath, Path.GetFileName(platformResult.downloadUrl));

                    wc.DownloadProgressChanged += Wc_DownloadProgressChanged;
                    wc.DownloadDataCompleted   += Wc_DownloadDataCompleted;
                    wc.Credentials              = new NetworkCredential(confSettings.Users1CLogin, confSettings.Users1CPassword);
                    wc.DownloadFileTaskAsync(new Uri(platformResult.downloadUrl), downloadFileName).Wait();

                    Common.Log("\nПолучение файла с обновлением платформы успешно завершено");

                    Common.Log("Разархивирование полученного обновления платформы...");
                    Common.ExtractArchiveToDirectory(downloadFileName, downloadPath);
                    File.Delete(downloadFileName);

                    Common.Log($"Получение обновления платформы {platformInfoResult.platformVersion} успешно завершено!", ConsoleColor.Green);
                }
            }
            catch (Exception E)
            {
                Common.LogException(E);
            }
        }