Mamy pliki pogrupowane w różne kategorie, na przykład CatA
.. CatD
. Każda kategoria ma powiązany folder, który może być skonfigurowany przez użytkownika. Na przykład CatA
przechodzi do C:\Path\To\CatA
, CatB
do C:\Path\To\CatB
i CatC
i CatD
przejdź do C:\Path\To\CatCD
.VCLZip: "Wirtualne" katalogi w pliku zip
Teraz chcę do tworzenia kopii zapasowych i przywracania tych plików w/z pliku zip według specyfikacji jak
[CatA]
SomeFile.abc
*.txt
[CatB]
File3.xyz
File4.xyz
.
.
.
Powstały plik zip powinien mieć strukturę jak
CatA
SomeFile.abc
aaa.txt
bbb.txt
ccc.txt
CatB
File3.xyz
File4.xyz
.
.
.
udało to ja z VCLZip poprzez wywoływanie wielu połączeń z metodami na zadanie i trochę hackery z właściwością Pathname. Jednak wolałbym jedno połączenie do Zip
/UnZip(Selected)
, aby VCLZip mógł dokładniej obliczyć ogólny postęp i otrzymam mniej skokowy pasek postępu.
byłem w stanie realizować to przez (ab) przy użyciu właściwości TVCLUnzip.FilesList.Objects
do „transfer” niektórzy za plików o kategorii w produkt OnStartZip
obsługi, gdzie można następnie manipulować ZipHeader.directory
, ale to wydaje się zbyt skomplikowana i delikatna, więc mam nadzieję, istnieje prostsze rozwiązanie, którego po prostu nie widzę. Jakieś pomysły?
Pomoc online dla 'OnStartZip' ma przykład, który zmienia ścieżki w ostatniej chwili i wspomina, które inne właściwości można bezpiecznie zmienić. Jedyną rzeczą, która jest nieco bardziej skomplikowana, jest uzyskanie prawidłowych informacji na podstawie przekazanej nazwy pliku i już udało się to rozwiązać. Zachowałbym to w ten sposób. – hvd