![]() |
Ordnerstruktur im ZipFile
Hallo zusammen,
ich habe folgendes Anliegen: Mit meiner bestehenden Applikation erstelle ich von verschiedenen Verzeichnissen ein ZipFile mit TZipmaster. Dies geschieht folgendermaßen:
Delphi-Quellcode:
So, das funktioniert ja alles richtig, aber es wird die komplette Verzeichnisstruktur entnommen die ich mit der Datei angebe.
cz := TZipMaster.Create(nil);
cz.ZipFilename := MyZipFileName; if not DirectoryExists(Exportdir.Caption) then // Ausgabeverzeichnis für das Zip-File ForceDirectories(Exportdir.Caption); cz.AddOptions := [AddRecurseDirs, AddDirNames, AddSeparateDirs]; cz.FSpecArgs.Add(ChangeFileExt(ImageDir.Caption, '*.*')); ... ... cz.Add; while cz.ZipBusy do Application.ProcessMessages; cz.Free; Bsp.: D:\Test\MeineBilder\*.* dann ist im Zipfile folgende Struktur: Test\MeineBilder\*.* Hier liegt mein Problem! Ich möchte eine eigene Verzeichnisstruktur im Zip-File definieren und lediglich die Dateien kopieren. Bsp.: D:\Test\MeineBilder\*.* -> alle Dateien aus dem MeineBilder sollen entnommen werden im Zipfile soll die Struktur z.B. so aussehen: Kunde\Backup\Bilder\*.* Ich hoffe die Erläuterungen sind soweit verständlich. Danke im Voraus & Gruß, Moony |
Re: Ordnerstruktur im ZipFile
Hi,
ich denke, "RootDir" ist das, was du suchst. Aus der Help: Zitat:
aayb |
Re: Ordnerstruktur im ZipFile
Das kann ich ja nicht machen, weil ich sonst ständig das RootDir ändern müßte, da ich unterschiedliche Verzeichnisse verwende.
Das mit der übergeordneten Struktur habe ich bereits hinbekommen. D.h. dass ich lediglich die Dateien aus dem genannten Verzeichnis ins Zip-File kopiere: Bei AddOptions darf "AddDirNames" nicht mit angegeben werden. Aber was mir noch fehlt ist eben die Struktur innerhalb des Zipfiles. |
Re: Ordnerstruktur im ZipFile
So, ich habe es nun geschafft die besch... Struktur zu ändern! Für alle die es interessiert:
1. Bei den AddOptions muß die Option "AddDirNames" eingetragen werden. 2. In dem Ereignis "OnSetNewName" vom TZipmaster kann dann in OldFileName die Struktur neu bestimmt werden: D:\Test\MeineBilder\Bild.jpg -> hinzugefügte Datei OldFileName := 'Kunde\Backup\Bilder\' + ExtractFileName(OldFileName); 3. Anschließend MUSS IsChanged auf True gesetzt werden. E voila fertig ist die neue Struktur! Gruß & Danke, Moony |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz