|
13 | 13 | #Использовать v8runner |
14 | 14 | #Использовать strings |
15 | 15 | #Использовать 1commands |
| 16 | +#Использовать v8unpack |
16 | 17 |
|
17 | 18 | Перем Лог; |
18 | 19 | Перем мФайлПрограммыРаспаковки; |
|
399 | 400 | КонецПроцедуры |
400 | 401 |
|
401 | 402 | Процедура РаспаковатьКонтейнерМетаданных(Знач ФайлРаспаковки, Знач КаталогРаспаковки, Знач Переименования, Знач КорневойКаталог) |
402 | | - ФайлДляРаспаковки = Новый файл(ФайлРаспаковки); |
403 | | - Если КаталогРаспаковки = "" тогда |
404 | | - КаталогРаспаковки = ВременныеФайлы.СоздатьКаталог(); |
405 | | - КонецЕсли; |
406 | | - |
407 | | - СтрокаЗапуска = """"+ФайлПрограммыРаспаковки()+""" -parse """+ФайлДляРаспаковки.ПолноеИмя+""" """+КаталогРаспаковки+""""; |
408 | | - Если НЕ ЭтоWindows Тогда |
409 | | - СтрокаЗапуска = "sh -c '"+СтрокаЗапуска+"'"; |
410 | | - КонецЕсли; |
411 | | - Лог.Отладка(СтрокаЗапуска); |
412 | 403 |
|
413 | | - ЗапуститьПриложение(СтрокаЗапуска,,Истина); |
| 404 | + Распаковщик = Новый ЧтениеФайла8(ФайлРаспаковки); |
| 405 | + Распаковщик.ИзвлечьВсе(КаталогРаспаковки, Истина); |
414 | 406 |
|
415 | 407 | Если ПереименовыватьФайлМодуляОбычнойФормы Тогда |
416 | 408 |
|
|
1183 | 1175 | //////////////////////////////////////////////////////////////////////////////////////////////// |
1184 | 1176 | // Общие функции |
1185 | 1177 |
|
1186 | | - |
1187 | | -Функция ФайлПрограммыРаспаковки() |
1188 | | - |
1189 | | - Если мФайлПрограммыРаспаковки = Неопределено Тогда |
1190 | | - Если ЭтоWindows Тогда |
1191 | | - КаталогДвоичныхФайлов = ОбъединитьПути(ТекущийСценарий().Каталог, "..\..\..\bin"); |
1192 | | - ФайлПрограммы = Новый Файл(ОбъединитьПути(КаталогДвоичныхФайлов, "v8unpack.exe")); |
1193 | | - Если Не ФайлПрограммы.Существует() Тогда |
1194 | | - ВызватьИсключение СтроковыеФункции.ПодставитьПараметрыВСтроку("Не обнаружен файл программы распаковки: <%1>", ФайлПрограммы.ПолноеИмя); |
1195 | | - КонецЕсли; |
1196 | | - |
1197 | | - ФайлZLib = Новый Файл(ОбъединитьПути(КаталогДвоичныхФайлов, "zlib1.dll")); |
1198 | | - Если Не ФайлZLib.Существует() Тогда |
1199 | | - ВызватьИсключение СтроковыеФункции.ПодставитьПараметрыВСтроку("Не обнаружена библиотека zlib1: <%1>", ФайлZLib.ПолноеИмя); |
1200 | | - КонецЕсли; |
1201 | | - мФайлПрограммыРаспаковки = ФайлПрограммы.ПолноеИмя; |
1202 | | - Иначе |
1203 | | - мФайлПрограммыРаспаковки = "v8unpack"; //установка происходит из репозитариев, поэтому уже в переменной path |
1204 | | - КонецЕсли; |
1205 | | - |
1206 | | - КонецЕсли; |
1207 | | - |
1208 | | - Возврат мФайлПрограммыРаспаковки; |
1209 | | - |
1210 | | -КонецФункции |
1211 | | - |
1212 | 1178 | Функция ИмяФайлаАвторов() Экспорт |
1213 | 1179 | Возврат "AUTHORS"; |
1214 | 1180 | КонецФункции |
|
0 commit comments