diff --git a/src/AutoUpdateIB.os b/src/AutoUpdateIB.os index 859a3b5..3a04a9c 100644 --- a/src/AutoUpdateIB.os +++ b/src/AutoUpdateIB.os @@ -13,30 +13,35 @@ // Инициализация // Инициализация параметров -Функция Инициализировать() +Процедура Инициализировать() Каталоги = Новый Структура; УстановитьКаталоги(); - + + // Параметры ИТС ПараметрыАутентификации = Новый Структура; УстановитьПараметрыАутентификации(); ПараметрыЗавершенияСоединения = Новый Структура; УстановитьПараметрыЗавершенияСоединения(); - + ПараметрыБлокировкиCеансов = Новый Структура; УстановитьПараметрыБлокировкиCеансов(); - + ПараметрыРезервногоКопирования = Новый Структура; УстановитьПараметрыРезервногоКопирования(); - + НастройкиПодключения = Новый Структура; - НастройкиПодключения.Вставить("СерверПроверкиОбновлений", "downloads.1c.ru"); // Адрес сервера для проверки наличия обновлений (открытая часть). - НастройкиПодключения.Вставить("ПутьКФайлуПроверкиОбновлений", "/ipp/ITSREPV/V8Update/Configs"); // Путь к файлу проверки обновлений на сервере. - НастройкиПодключения.Вставить("СерверОбновлений", "downloads.v8.1c.ru"); //Адрес сервера обновлений (закрытая часть). - НастройкиПодключения.Вставить("ПутьКФайлуОбновлений", "/tmplts"); // Путь к файлу обновлений на сервере. + // Адрес сервера для проверки наличия обновлений (открытая часть). + НастройкиПодключения.Вставить("СерверПроверкиОбновлений", "downloads.1c.ru"); + // Путь к файлу проверки обновлений на сервере. + НастройкиПодключения.Вставить("ПутьКФайлуПроверкиОбновлений", "/ipp/ITSREPV/V8Update/Configs"); + //Адрес сервера обновлений (закрытая часть). + НастройкиПодключения.Вставить("СерверОбновлений", "downloads.v8.1c.ru"); + // Путь к файлу обновлений на сервере. + НастройкиПодключения.Вставить("ПутьКФайлуОбновлений", "/tmplts"); -КонецФункции +КонецПроцедуры // Устанавливает каталоги хранения файлов обновления и временных файлов // @@ -46,10 +51,8 @@ // Процедура УстановитьКаталоги(КаталогФайловОбновления = "", КаталогВременныхФайлов = "") Экспорт - СистемнаяИнформация = Новый СистемнаяИнформация(); - Если ПустаяСтрока(КаталогФайловОбновления) Тогда - КаталогAPPDATA = СистемнаяИнформация.ПолучитьПеременнуюСреды("APPDATA"); + КаталогAPPDATA = ПолучитьПеременнуюСреды("APPDATA"); КаталогФайловОбновления = ОбъединитьПути(КаталогAPPDATA, "1C\1Cv8\tmplts\1c"); КонецЕсли; Если НЕ ОбеспечитьКаталог(КаталогФайловОбновления) Тогда @@ -57,7 +60,7 @@ КонецЕсли; Если ПустаяСтрока(КаталогВременныхФайлов) Тогда - КаталогTEMP = СистемнаяИнформация.ПолучитьПеременнуюСреды("TEMP"); + КаталогTEMP = ПолучитьПеременнуюСреды("TEMP"); КаталогВременныхФайлов = ОбъединитьПути(КаталогTEMP, "AutoUpdateIB"); КонецЕсли; Если НЕ ОбеспечитьКаталог(КаталогВременныхФайлов) Тогда @@ -143,8 +146,7 @@ Если СоздаватьРезервнуюКопию Тогда Если ПустаяСтрока(КаталогРезервныхКопий) Тогда - СистемнаяИнформация = Новый СистемнаяИнформация(); - КаталогTEMP = СистемнаяИнформация.ПолучитьПеременнуюСреды("TEMP"); + КаталогTEMP = ПолучитьПеременнуюСреды("TEMP"); КаталогРезервныхКопий = ОбъединитьПути(КаталогTEMP, "AutoUpdateIB", "DumpIB"); КонецЕсли; Если НЕ ОбеспечитьКаталог(КаталогРезервныхКопий) Тогда @@ -202,6 +204,9 @@ КонецПроцедуры // Возвращает лог + // Возвращаемое значение: + // Логирование - Компонента логирования Logos + // Функция ПолучитьЛог() Экспорт Возврат Лог; @@ -300,10 +305,10 @@ // Получаем сам файл из Интернета. Попытка - Соединение = Новый HTTPСоединение(НастройкиПодключения.СерверПроверкиОбновлений, , ПараметрыАутентификации.Пользователь, ПараметрыАутентификации.Пароль,); + Соединение = Новый HTTPСоединение(НастройкиПодключения.СерверПроверкиОбновлений, , ПараметрыАутентификации.Пользователь, ПараметрыАутентификации.Пароль, , 10); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось установить HTTP-соединение с сервером %1: - |%2'"), НастройкиПодключения.СерверПроверкиОбновлений, ИнформацияОбОшибке())); + |%2'"), НастройкиПодключения.СерверПроверкиОбновлений, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; @@ -314,7 +319,7 @@ Соединение.Получить(HTTPЗапрос, ZipФайлСпискаШаблонов); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось получить файл с сервера %1: - |%2'"), НастройкиПодключения.СерверПроверкиОбновлений, ИнформацияОбОшибке())); + |%2'"), НастройкиПодключения.СерверПроверкиОбновлений, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; @@ -323,7 +328,7 @@ ФайлZip = Новый ЧтениеZipФайла(ZipФайлСпискаШаблонов); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось прочесть архив %1: - |%2'"), ZipФайлСпискаШаблонов, ИнформацияОбОшибке())); + |%2'"), ZipФайлСпискаШаблонов, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; ФайлZip.ИзвлечьВсе(Каталоги.КаталогВременныхФайлов); @@ -334,7 +339,7 @@ УдалитьФайлы(ZipФайлСпискаШаблонов); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось удалить временный файл %1: - |%2'"), ZipФайлСпискаШаблонов, ИнформацияОбОшибке())); + |%2'"), ZipФайлСпискаШаблонов, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); КонецПопытки; Лог.Отладка(НСтр("ru = 'Получение списков обновления завершено.'")); @@ -425,7 +430,7 @@ Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Ошибка при чтении файла списка обновлений. - |%1'"), ИнформацияОбОшибке())); + |%1'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); ЧтениеXML.Закрыть(); Возврат Неопределено; @@ -438,7 +443,7 @@ УдалитьФайлы(ФайлСпискаШаблонов); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось удалить временный файл %1: - |%2'"), ФайлСпискаШаблонов, ИнформацияОбОшибке())); + |%2'"), ФайлСпискаШаблонов, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); КонецПопытки; Лог.Отладка(НСтр("ru = 'Анализ списков обновления завершен.'")); @@ -731,10 +736,10 @@ // Получаем сам файл из Интернета. Попытка - Соединение = Новый HTTPСоединение(НастройкиПодключения.СерверОбновлений, , ПараметрыАутентификации.Пользователь, ПараметрыАутентификации.Пароль,); + Соединение = Новый HTTPСоединение(НастройкиПодключения.СерверОбновлений, , ПараметрыАутентификации.Пользователь, ПараметрыАутентификации.Пароль, , 10); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось установить HTTP-соединение с сервером %1: - |%2'"), НастройкиПодключения.СерверОбновлений, ИнформацияОбОшибке())); + |%2'"), НастройкиПодключения.СерверОбновлений, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; @@ -746,7 +751,7 @@ Соединение.Получить(HTTPЗапрос, ZipФайлОбновления); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось получить файл с сервера %1: - |%2'"), НастройкиПодключения.СерверОбновлений, ИнформацияОбОшибке())); + |%2'"), НастройкиПодключения.СерверОбновлений, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; @@ -755,7 +760,7 @@ ФайлZip = Новый ЧтениеZipФайла(ZipФайлОбновления); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось прочесть архив %1: - |%2'"), ZipФайлОбновления, ИнформацияОбОшибке())); + |%2'"), ZipФайлОбновления, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; ФайлZip.ИзвлечьВсе(ВерсияДляОбновления.Каталог); @@ -766,7 +771,7 @@ УдалитьФайлы(ZipФайлОбновления); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось удалить временный файл %1: - |%2'"), ZipФайлОбновления, ИнформацияОбОшибке())); + |%2'"), ZipФайлОбновления, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; @@ -871,7 +876,7 @@ Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Ошибка при установке запрета на подключение новых соединений. - |%1'"), ИнформацияОбОшибке())); + |%1'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); ОсвободитьОбъект(Соединение); ВыполнитьСборкуМусора(); Соединение = Неопределено; @@ -933,7 +938,7 @@ ФайлZip.Записать(); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Ошибка при записи файла информационной базы в архив. - |%1'"), ИнформацияОбОшибке())); + |%1'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; @@ -990,7 +995,7 @@ Соединение.ОбновлениеИнформационнойБазыСлужебный.ВыполнитьОтложенноеОбновлениеСейчас(); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Ошибка при выполнении отложенных обработчиков обновления. - |%1'"),ИнформацияОбОшибке())); + |%1'"),ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); ОсвободитьОбъект(Соединение); ВыполнитьСборкуМусора(); Соединение = Неопределено; @@ -1117,7 +1122,7 @@ Результат = Соединение.ОбновлениеИнформационнойБазы.ВыполнитьОбновлениеИнформационнойБазы(Ложь); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Ошибка при принятии изменений в информационной базе. - |%1'"), ИнформацияОбОшибке())); + |%1'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()) )); ОсвободитьОбъект(Соединение); ВыполнитьСборкуМусора(); Соединение = Неопределено; @@ -1176,7 +1181,7 @@ ФайлZip = Новый ЧтениеZipФайла(ФайлРезервнойКопии); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось прочесть архив %1: - |%2'"), ФайлРезервнойКопии, ИнформацияОбОшибке())); + |%2'"), ФайлРезервнойКопии, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; ФайлZip.ИзвлечьВсе(ПараметрыПодключения.КаталогИнформационнойБазы); @@ -1214,7 +1219,7 @@ Соединение.СоединенияИБ.РазрешитьРаботуПользователей(); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Ошибка при разрешении подключений новых соединений. - |%1'"), ИнформацияОбОшибке())); + |%1'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); ОсвободитьОбъект(Соединение); ВыполнитьСборкуМусора(); Соединение = Неопределено; @@ -1252,7 +1257,7 @@ СоздатьКаталог(Каталог); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось создать каталог %1. - |%2'"), Каталог, ИнформацияОбОшибке())); + |%2'"), Каталог, ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Ложь; КонецПопытки; @@ -1332,7 +1337,7 @@ COMОбъект = Новый COMОбъект(ИмяCOMСоединителя); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось подключится к другой программе: - |%1'"), ИнформацияОбОшибке())); + |%1'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Неопределено; КонецПопытки; @@ -1374,7 +1379,7 @@ Соединение = COMОбъект.Connect(СтрокаСоединения); Исключение Лог.Ошибка(СтрШаблон(НСтр("ru = 'Не удалось подключится к другой программе: - |%1'"), ИнформацияОбОшибке())); + |%1'"), ПодробноеПредставлениеОшибки(ИнформацияОбОшибке()))); Возврат Неопределено; КонецПопытки; @@ -1419,5 +1424,13 @@ КонецФункции +Функция Форматировать(Знач Уровень, Знач Сообщение) Экспорт + + Возврат СтрШаблон("%1: %2 - %3", ТекущаяДата(), УровниЛога.НаименованиеУровня(Уровень), Сообщение); + +КонецФункции + Лог = Логирование.ПолучитьЛог("oscript.lib.AutoUpdateIB"); +Лог.УстановитьРаскладку(ЭтотОбъект); + Инициализировать();