Skip to content
This repository was archived by the owner on Oct 25, 2018. It is now read-only.

Commit 2d8e902

Browse files
author
Сосна Евгений
committed
Доработано разбор рекурсивно каталога с файлами.
1 parent 67ce1bc commit 2d8e902

17 files changed

+41
-19
lines changed

pyv8unpack.py

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -64,19 +64,18 @@ def get_path_to_1c():
6464
cmd = os.getenv("PATH1C")
6565
if not cmd is None:
6666
cmd = os.path.join(cmd, "1cv8")
67-
maxversion = max(list(filter((lambda x: '8.' in x), os.listdir(cmd))))
67+
maxversion = max(list(filter((lambda x: '8.' in x), os.listdir(cmd))))
6868
if maxversion is None:
6969
raise Exception("not found verion dirs")
70-
cmd = os.path.join(cmd, maxversion + os.path.sep + "bin"+os.path.sep+"1cv8.exe")
70+
cmd = os.path.join(cmd, maxversion+os.path.sep+"bin"+os.path.sep+"1cv8.exe")
7171

7272
if not os.path.isfile(cmd):
73-
raise Exception("file not found %s" %(cmd))
73+
raise Exception("file not found %s" % (cmd))
7474

7575
return cmd
7676

7777
#read config
7878

79-
8079
curdir = os.curdir
8180
if '__file__' in globals():
8281
curdir = os.path.dirname(os.path.abspath(__file__))
@@ -96,13 +95,13 @@ def get_path_to_1c():
9695
if program_files is None:
9796
raise "path to Program files not found";
9897
cmd = os.path.join(program_files, "1cv8")
99-
maxversion = max(list(filter((lambda x: '8.' in x), os.listdir(cmd))))
98+
maxversion = max(list(filter((lambda x: '8.' in x), os.listdir(cmd))))
10099
if maxversion is None:
101100
raise Exception("not found verion dirs")
102101
cmd = os.path.join(cmd, maxversion + os.path.sep + "bin"+os.path.sep+"1cv8.exe")
103102

104103
if not os.path.isfile(cmd):
105-
raise Exception("file not found %s" %(cmd))
104+
raise Exception("file not found %s" % (cmd))
106105

107106
else:
108107
cmd = subprocess.Popen(["which", "1cv8"], stdout=PIPE).communicate()[0].strip()
@@ -175,12 +174,15 @@ def decompile(list_of_files, source=None, platform=None):
175174
if not os.path.exists(dirsource):
176175
os.makedirs(dirsource)
177176
#для каждого файла определим новую папку.
177+
logging.debug("{} {} {}".format(dirsource, newdirname, basename))
178178
newsourcepath = os.path.join(dirsource, newdirname, basename)
179179
if(os.path.isabs(newdirname)):
180180
newsourcepath = os.path.join(dirsource, basename)
181181
if not os.path.exists(newsourcepath):
182182
logging.debug("create new dir %s" % newsourcepath)
183183
os.makedirs(newsourcepath)
184+
else:
185+
shutil.rmtree(newsourcepath, ignore_errors=True)
184186

185187
logging.debug("file to copy %s, new path %s, new file %s"
186188
% (filename, newsourcepath, os.path.join(newsourcepath, fullbasename))
@@ -323,6 +325,19 @@ def main():
323325
if args.inputPath is not None:
324326
files = [os.path.abspath(
325327
os.path.join(os.path.curdir, args.inputPath))]
328+
if os.path.isdir(files[0]):
329+
rootDir = os.path.abspath(
330+
os.path.join(os.path.curdir, args.inputPath));
331+
files=[]
332+
for dirName, subdirList, fileList in os.walk(rootDir):
333+
absdir = dirName[len(rootDir)+1:]
334+
if '.git' in subdirList:
335+
subdirList.remove('.git')
336+
if 'src' in subdirList:
337+
subdirList.remove('src')
338+
for fname in fileList:
339+
files.append(os.path.join(absdir,fname))
340+
326341
decompile(
327342
files, args.output, args.platform)
328343

src/V8Reader/renames.txt

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
1aee28e2-8225-463f-be46-4ad936f2b7ce-->und\1aee28e2-8225-463f-be46-4ad936f2b7ce
22
1aee28e2-8225-463f-be46-4ad936f2b7ce.0-->Form\ВиртуальнаяФорма
33
1da9808b-523e-4e19-a579-8066f1a6715b-->und\1da9808b-523e-4e19-a579-8066f1a6715b
4-
1da9808b-523e-4e19-a579-8066f1a6715b.0-->Макеты\СвойстваПолеВвода\СвойстваПолеВвода.mxl
4+
1da9808b-523e-4e19-a579-8066f1a6715b.0-->Макеты\СвойстваПолеВвода.mxl
55
1da9808b-523e-4e19-a579-8066f1a6715b.0-->und\1da9808b-523e-4e19-a579-8066f1a6715b.0
66
30e6f641-d550-403b-baa0-858779e00175.0\info-->und\30e6f641-d550-403b-baa0-858779e00175.0\info
77
30e6f641-d550-403b-baa0-858779e00175.0\text-->ObjectModule.txt
88
49bf2c0c-9353-4f99-8a91-63285fc8b8b3-->und\49bf2c0c-9353-4f99-8a91-63285fc8b8b3
9-
49bf2c0c-9353-4f99-8a91-63285fc8b8b3.0-->Макеты\zlib1\zlib1.txt
9+
49bf2c0c-9353-4f99-8a91-63285fc8b8b3.0-->Макеты\zlib1.txt
1010
49bf2c0c-9353-4f99-8a91-63285fc8b8b3.0-->und\49bf2c0c-9353-4f99-8a91-63285fc8b8b3.0
1111
578b42df-9f20-491a-84ee-a03a67937650-->und\578b42df-9f20-491a-84ee-a03a67937650
12-
578b42df-9f20-491a-84ee-a03a67937650.0-->Макеты\МакетСвойствУправляемойФормы\МакетСвойствУправляемойФормы.mxl
12+
578b42df-9f20-491a-84ee-a03a67937650.0-->Макеты\МакетСвойствУправляемойФормы.mxl
1313
578b42df-9f20-491a-84ee-a03a67937650.0-->und\578b42df-9f20-491a-84ee-a03a67937650.0
1414
59fc50b9-e64d-4b41-9289-fe5d4347fa44-->und\59fc50b9-e64d-4b41-9289-fe5d4347fa44
15-
59fc50b9-e64d-4b41-9289-fe5d4347fa44.0-->Макеты\МакетСвойств\МакетСвойств.mxl
15+
59fc50b9-e64d-4b41-9289-fe5d4347fa44.0-->Макеты\МакетСвойств.mxl
1616
59fc50b9-e64d-4b41-9289-fe5d4347fa44.0-->und\59fc50b9-e64d-4b41-9289-fe5d4347fa44.0
1717
612065b8-f85d-4c98-ba3c-3425a0650549-->und\612065b8-f85d-4c98-ba3c-3425a0650549
18-
612065b8-f85d-4c98-ba3c-3425a0650549.0-->Макеты\МакетРасширений\МакетРасширений.mxl
18+
612065b8-f85d-4c98-ba3c-3425a0650549.0-->Макеты\МакетРасширений.mxl
1919
612065b8-f85d-4c98-ba3c-3425a0650549.0-->und\612065b8-f85d-4c98-ba3c-3425a0650549.0
2020
650ef89e-0894-4269-9786-1705b436c87f-->und\650ef89e-0894-4269-9786-1705b436c87f
2121
650ef89e-0894-4269-9786-1705b436c87f.0-->Form\НавигаторПоФайлам
@@ -27,19 +27,19 @@
2727
6f3ae742-09b1-4c84-a677-20ba1ad94604.0-->Form\ФормаСтруктурногоСравненияМодуля
2828
6f680c0d-f360-4dd5-8fec-15672a87468e-->und\6f680c0d-f360-4dd5-8fec-15672a87468e
2929
6f680c0d-f360-4dd5-8fec-15672a87468e.0-->und\6f680c0d-f360-4dd5-8fec-15672a87468e.0
30-
6f680c0d-f360-4dd5-8fec-15672a87468e.0-->Макеты\МакетСтандартныхДействий\МакетСтандартныхДействий.mxl
30+
6f680c0d-f360-4dd5-8fec-15672a87468e.0-->Макеты\МакетСтандартныхДействий.mxl
3131
730a590b-3afd-4126-a365-9b465e5dec1f-->und\730a590b-3afd-4126-a365-9b465e5dec1f
32-
730a590b-3afd-4126-a365-9b465e5dec1f.0-->Макеты\МакетСтруктурыКонфигурации\МакетСтруктурыКонфигурации.mxl
32+
730a590b-3afd-4126-a365-9b465e5dec1f.0-->Макеты\МакетСтруктурыКонфигурации.mxl
3333
730a590b-3afd-4126-a365-9b465e5dec1f.0-->und\730a590b-3afd-4126-a365-9b465e5dec1f.0
3434
75c9e0a1-c061-419d-a435-a758a19ebc88-->und\75c9e0a1-c061-419d-a435-a758a19ebc88
3535
75c9e0a1-c061-419d-a435-a758a19ebc88.0-->Form\ФормаНастройки
3636
88623538-39fe-44d7-9a19-a8196754fbfc-->und\88623538-39fe-44d7-9a19-a8196754fbfc
37-
88623538-39fe-44d7-9a19-a8196754fbfc.0-->Макеты\UnpackV8\UnpackV8.txt
37+
88623538-39fe-44d7-9a19-a8196754fbfc.0-->Макеты\UnpackV8.txt
3838
88623538-39fe-44d7-9a19-a8196754fbfc.0-->und\88623538-39fe-44d7-9a19-a8196754fbfc.0
3939
9911a7d8-1125-4191-aad4-dcc34d1d6d7c-->und\9911a7d8-1125-4191-aad4-dcc34d1d6d7c
4040
9911a7d8-1125-4191-aad4-dcc34d1d6d7c.0-->Form\РазборФормы
4141
9d84af2e-7e98-4bd6-b8a7-cddb813852df-->und\9d84af2e-7e98-4bd6-b8a7-cddb813852df
42-
9d84af2e-7e98-4bd6-b8a7-cddb813852df.0-->Макеты\Автозаполнение\Автозаполнение.mxl
42+
9d84af2e-7e98-4bd6-b8a7-cddb813852df.0-->Макеты\Автозаполнение.mxl
4343
9d84af2e-7e98-4bd6-b8a7-cddb813852df.0-->und\9d84af2e-7e98-4bd6-b8a7-cddb813852df.0
4444
a635243d-2cfb-421b-89ef-af90a9c7d16e-->und\a635243d-2cfb-421b-89ef-af90a9c7d16e
4545
a635243d-2cfb-421b-89ef-af90a9c7d16e.0-->Form\ФормаДляРолей
@@ -50,7 +50,7 @@ beafca84-05f5-404d-a794-9066eb489c58-->und\beafca84-05f5-404d-a794-9066eb489c58
5050
beafca84-05f5-404d-a794-9066eb489c58.0-->Form\ФормаДвоичныхДанных
5151
copyinfo-->und\copyinfo
5252
ee4742b3-8506-4205-b23d-35ba4dd3a30d-->und\ee4742b3-8506-4205-b23d-35ba4dd3a30d
53-
ee4742b3-8506-4205-b23d-35ba4dd3a30d.0-->Макеты\МакетОформленияДляСравнения\МакетОформленияДляСравнения.txt
53+
ee4742b3-8506-4205-b23d-35ba4dd3a30d.0-->Макеты\МакетОформленияДляСравнения.txt
5454
ee4742b3-8506-4205-b23d-35ba4dd3a30d.0-->und\ee4742b3-8506-4205-b23d-35ba4dd3a30d.0
5555
f74c76d8-817b-4b93-8e7a-d2c284dbc721-->und\f74c76d8-817b-4b93-8e7a-d2c284dbc721
5656
f74c76d8-817b-4b93-8e7a-d2c284dbc721.0-->Form\Форма
File renamed without changes.

0 commit comments

Comments
 (0)