From abde2fa7a6f75c167fbd73d5bcd36cc0a818c109 Mon Sep 17 00:00:00 2001 From: Zakharov Vitaliy Date: Mon, 28 Jan 2019 14:35:39 +0300 Subject: [PATCH 1/4] =?UTF-8?q?=D0=A3=D0=B1=D1=80=D0=B0=D0=BD=D0=B0=20?= =?UTF-8?q?=D0=BF=D1=80=D0=B5=D0=B4=D0=B2=D0=B0=D1=80=D0=B8=D1=82=D0=B5?= =?UTF-8?q?=D0=BB=D1=8C=D0=BD=D0=B0=D1=8F=20=D0=BE=D1=87=D0=B8=D1=81=D1=82?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=B8=D1=81=D1=85=D0=BE=D0=B4=D0=BD=D0=B8=D0=BA?= =?UTF-8?q?=D0=BE=D0=B2=20=D0=BF=D0=B5=D1=80=D0=B5=D0=B4=20=D0=B7=D0=B0?= =?UTF-8?q?=D0=BF=D1=83=D1=81=D0=BA=D0=BE=D0=BC=20=D0=BA=D0=BE=D0=BD=D1=84?= =?UTF-8?q?=D0=B8=D0=B3=D1=83=D1=80=D0=B0=D1=82=D0=BE=D1=80=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- v8files-extractor.os | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/v8files-extractor.os b/v8files-extractor.os index 2429dba..c779a1d 100644 --- a/v8files-extractor.os +++ b/v8files-extractor.os @@ -295,10 +295,6 @@ ПутьКаталогаИсходников = ОбъединитьПути(КаталогВыгрузки, ОтносительныйПутьКаталогаФайла); Лог.Отладка("ПутьКаталогаИсходников <%1>", ПутьКаталогаИсходников); ПапкаИсходников = Новый Файл(ПутьКаталогаИсходников); - - Если НЕ ВРег(Файл.Расширение) = ".MXL" Тогда - ОбеспечитьПустойКаталог(ПапкаИсходников); - КонецЕсли; Если ВРег(Файл.Расширение) = ".CFE" Тогда ЗапуститьРаспаковкуРасширения(Файл, ПапкаИсходников); @@ -329,6 +325,9 @@ Процедура ЗапуститьРаспаковкуРасширения(Знач Файл, Знач ПапкаИсходников) + Лог.Отладка("Обеспечиваем пустой каталог: " + ПапкаИсходников.ПолноеИмя); + ОбеспечитьПустойКаталог(ПапкаИсходников); + Лог.Отладка("Запускаем распаковку файла расширения"); Конфигуратор = Новый УправлениеКонфигуратором(); @@ -375,18 +374,28 @@ ЛогКонфигуратора = Логирование.ПолучитьЛог("oscript.lib.v8runner"); ЛогКонфигуратора.УстановитьУровень(Лог.Уровень()); - ЭтоМакет = ВРег(Файл.Расширение) = ".MXL"; Параметры = Конфигуратор.ПолучитьПараметрыЗапуска(); Если НЕ ЭтоМакет И ИспользоватьКонфигуратор Тогда - КоманднаяСтрокаРаспаковки = СтрШаблон("/DumpExternalDataProcessorOrReportToFiles ""%1\%2.xml"" ""%3""", ПапкаИсходников.ПолноеИмя, Файл.ИмяБезРасширения, Файл.ПолноеИмя); + ВременнаяПапкаИсходников = ВременныеФайлы.СоздатьКаталог(); + + КоманднаяСтрокаРаспаковки = СтрШаблон("/DumpExternalDataProcessorOrReportToFiles ""%1\%2.xml"" ""%3""", ВременнаяПапкаИсходников, Файл.ИмяБезРасширения, Файл.ПолноеИмя); Лог.Отладка("Командная строка распаковки: " + КоманднаяСтрокаРаспаковки); Параметры.Добавить(КоманднаяСтрокаРаспаковки); + Конфигуратор.ВыполнитьКоманду(Параметры); + Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); + + Лог.Отладка("Обеспечиваем пустой каталог: " + ПапкаИсходников.ПолноеИмя); + ОбеспечитьПустойКаталог(ПапкаИсходников); + + Лог.Отладка("Копируем исходники из временного каталога в целевой: " + ПапкаИсходников.ПолноеИмя); + КопироватьСодержимоеКаталога(ВременнаяПапкаИсходников, ПапкаИсходников.ПолноеИмя); + Иначе Параметры[0] = "ENTERPRISE"; @@ -403,10 +412,10 @@ Параметры.Добавить("/Execute """ + ПутьV8Reader + """"); Параметры.Добавить(КоманднаяСтрокаV8Reader); - КонецЕсли; + Конфигуратор.ВыполнитьКоманду(Параметры); + Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); - Конфигуратор.ВыполнитьКоманду(Параметры); - Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); + КонецЕсли; КонецПроцедуры From 4fe6f18a7d861aba32218e52d973ca44decd9985 Mon Sep 17 00:00:00 2001 From: Zakharov Vitaliy Date: Mon, 28 Jan 2019 22:10:06 +0300 Subject: [PATCH 2/4] =?UTF-8?q?=D0=A0=D0=B0=D1=81=D0=BA=D0=BB=D0=B0=D0=B4?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=BD=D0=B0=20=D0=B8=D1=81=D1=85=D0=BE=D0=B4?= =?UTF-8?q?=D0=BD=D0=B8=D0=BA=D0=B8=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20?= =?UTF-8?q?=D0=BF=D1=80=D0=BE=D0=BC=D0=B5=D0=B6=D1=83=D1=82=D0=BE=D1=87?= =?UTF-8?q?=D0=BD=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- v8files-extractor.os | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/v8files-extractor.os b/v8files-extractor.os index c779a1d..0412bd9 100644 --- a/v8files-extractor.os +++ b/v8files-extractor.os @@ -325,9 +325,6 @@ Процедура ЗапуститьРаспаковкуРасширения(Знач Файл, Знач ПапкаИсходников) - Лог.Отладка("Обеспечиваем пустой каталог: " + ПапкаИсходников.ПолноеИмя); - ОбеспечитьПустойКаталог(ПапкаИсходников); - Лог.Отладка("Запускаем распаковку файла расширения"); Конфигуратор = Новый УправлениеКонфигуратором(); @@ -349,14 +346,21 @@ Конфигуратор.ВыполнитьКоманду(Параметры); Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); - Лог.Отладка("Разбор расширения '%1' в исходники в каталог '%2'", ИмяРасширения, ПапкаИсходников.ПолноеИмя); + ВременнаяПапкаИсходников = ВременныеФайлы.СоздатьКаталог(); + + Лог.Отладка("Разбор расширения '%1' в исходники в каталог '%2'", ИмяРасширения, ВременнаяПапкаИсходников); Параметры = Конфигуратор.ПолучитьПараметрыЗапуска(); - Параметры.Добавить("/DumpConfigToFiles """ + ПапкаИсходников.ПолноеИмя + """"); + Параметры.Добавить("/DumpConfigToFiles """ + ВременнаяПапкаИсходников + """"); Параметры.Добавить("-Extension """ + ИмяРасширения + """"); Конфигуратор.ВыполнитьКоманду(Параметры); Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); + ОбеспечитьПустойКаталог(ПапкаИсходников); + + Лог.Отладка("Копируем исходники из временного каталога в целевой: " + ПапкаИсходников.ПолноеИмя); + КопироватьСодержимоеКаталога(ВременнаяПапкаИсходников, ПапкаИсходников.ПолноеИмя); + КонецПроцедуры Процедура ЗапуститьРаспаковкуОбработки(Знач Файл, Знач ПапкаИсходников) @@ -375,11 +379,10 @@ ЛогКонфигуратора.УстановитьУровень(Лог.Уровень()); ЭтоМакет = ВРег(Файл.Расширение) = ".MXL"; + ВременнаяПапкаИсходников = ВременныеФайлы.СоздатьКаталог(); Параметры = Конфигуратор.ПолучитьПараметрыЗапуска(); Если НЕ ЭтоМакет И ИспользоватьКонфигуратор Тогда - - ВременнаяПапкаИсходников = ВременныеФайлы.СоздатьКаталог(); КоманднаяСтрокаРаспаковки = СтрШаблон("/DumpExternalDataProcessorOrReportToFiles ""%1\%2.xml"" ""%3""", ВременнаяПапкаИсходников, Файл.ИмяБезРасширения, Файл.ПолноеИмя); @@ -387,15 +390,6 @@ Параметры.Добавить(КоманднаяСтрокаРаспаковки); - Конфигуратор.ВыполнитьКоманду(Параметры); - Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); - - Лог.Отладка("Обеспечиваем пустой каталог: " + ПапкаИсходников.ПолноеИмя); - ОбеспечитьПустойКаталог(ПапкаИсходников); - - Лог.Отладка("Копируем исходники из временного каталога в целевой: " + ПапкаИсходников.ПолноеИмя); - КопироватьСодержимоеКаталога(ВременнаяПапкаИсходников, ПапкаИсходников.ПолноеИмя); - Иначе Параметры[0] = "ENTERPRISE"; @@ -404,7 +398,7 @@ Лог.Отладка("Путь к V8Reader: " + ПутьV8Reader); Ожидаем.Что(Новый Файл(ПутьV8Reader).Существует(), "Некорректно установлен V8Reader. Не обнаружен файл <" + ПутьV8Reader + ">").ЭтоИстина(); - КоманднаяСтрокаV8Reader = СтрШаблон("/C""decompile;pathtocf;%1;pathout;%2;convert-mxl2txt;ЗавершитьРаботуПосле;""", Файл.ПолноеИмя, ?(ЭтоМакет, Файл.Путь, ПапкаИсходников.ПолноеИмя)); + КоманднаяСтрокаV8Reader = СтрШаблон("/C""decompile;pathtocf;%1;pathout;%2;convert-mxl2txt;ЗавершитьРаботуПосле;""", Файл.ПолноеИмя, ?(ЭтоМакет, Файл.Путь, ВременнаяПапкаИсходников)); Лог.Отладка("Командная строка V8Reader: " + КоманднаяСтрокаV8Reader); @@ -412,11 +406,18 @@ Параметры.Добавить("/Execute """ + ПутьV8Reader + """"); Параметры.Добавить(КоманднаяСтрокаV8Reader); - Конфигуратор.ВыполнитьКоманду(Параметры); - Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); + КонецЕсли; + Конфигуратор.ВыполнитьКоманду(Параметры); + Лог.Отладка("Вывод 1С:Предприятия - " + Конфигуратор.ВыводКоманды()); + + Если Не ЭтоМакет Тогда + ОбеспечитьПустойКаталог(ПапкаИсходников); КонецЕсли; + Лог.Отладка("Копируем исходники из временного каталога в целевой: " + ПапкаИсходников.ПолноеИмя); + КопироватьСодержимоеКаталога(ВременнаяПапкаИсходников, ПапкаИсходников.ПолноеИмя); + КонецПроцедуры Процедура УстановитьУровеньЛогаКонфигуратораРавнымУровнюПродукта() From 92066d090090c08c8f8d44f964f5b7cf94791626 Mon Sep 17 00:00:00 2001 From: Zakharov Vitaliy Date: Mon, 28 Jan 2019 22:47:33 +0300 Subject: [PATCH 3/4] =?UTF-8?q?=D0=A0=D0=B0=D1=81=D0=BA=D0=BB=D0=B0=D0=B4?= =?UTF-8?q?=D0=BA=D0=B0=20=D0=BD=D0=B0=20=D0=B8=D1=81=D1=85=D0=BE=D0=B4?= =?UTF-8?q?=D0=BD=D0=B8=D0=BA=D0=B8=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20?= =?UTF-8?q?=D0=BF=D1=80=D0=BE=D0=BC=D0=B5=D0=B6=D1=83=D1=82=D0=BE=D1=87?= =?UTF-8?q?=D0=BD=D1=8B=D0=B9=20=D0=BA=D0=B0=D1=82=D0=B0=D0=BB=D0=BE=D0=B3?= =?UTF-8?q?.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- v8files-extractor.os | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/v8files-extractor.os b/v8files-extractor.os index 0412bd9..dec8e46 100644 --- a/v8files-extractor.os +++ b/v8files-extractor.os @@ -380,7 +380,7 @@ ЭтоМакет = ВРег(Файл.Расширение) = ".MXL"; ВременнаяПапкаИсходников = ВременныеФайлы.СоздатьКаталог(); - + Параметры = Конфигуратор.ПолучитьПараметрыЗапуска(); Если НЕ ЭтоМакет И ИспользоватьКонфигуратор Тогда From 03fe9163f0358d24134723a9024d8255c22a098d Mon Sep 17 00:00:00 2001 From: Zakharov Vitaliy Date: Tue, 29 Jan 2019 14:46:07 +0300 Subject: [PATCH 4/4] =?UTF-8?q?=D0=91=D0=BE=D0=BB=D0=B5=D0=B5=20=D0=BA?= =?UTF-8?q?=D0=BE=D1=80=D1=80=D0=B5=D0=BA=D1=82=D0=BD=D0=BE=D0=B5=20=D0=BE?= =?UTF-8?q?=D1=82=D0=BB=D0=B0=D0=B4=D0=BE=D1=87=D0=BD=D0=BE=D0=B5=20=D1=81?= =?UTF-8?q?=D0=BE=D0=BE=D0=B1=D1=89=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BE=D0=B1?= =?UTF-8?q?=20=D1=83=D0=B4=D0=B0=D0=BB=D0=B5=D0=BD=D0=B8=D0=B8=20=D1=84?= =?UTF-8?q?=D0=B0=D0=B9=D0=BB=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- v8files-extractor.os | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/v8files-extractor.os b/v8files-extractor.os index dec8e46..75a8f52 100644 --- a/v8files-extractor.os +++ b/v8files-extractor.os @@ -126,7 +126,7 @@ КодВозврата = 1; КонецПопытки; - Лог.Отладка("Очищаем каталог временной ИБ"); + Лог.Отладка("Очищаем временные файлы"); Попытка ВременныеФайлы.Удалить(); Исключение @@ -380,7 +380,7 @@ ЭтоМакет = ВРег(Файл.Расширение) = ".MXL"; ВременнаяПапкаИсходников = ВременныеФайлы.СоздатьКаталог(); - + Параметры = Конфигуратор.ПолучитьПараметрыЗапуска(); Если НЕ ЭтоМакет И ИспользоватьКонфигуратор Тогда