![]() |
Abbrevia LastModTime bei letzter Datei fehlerhaft
Hallo DPler,
ich versuche mich gerade an der Abbrevia Komponente und eigentlich klappt schon alles recht gut mir ist nur jetzt etwas sehr merkwürdiges aufgefallen. Ich habe eine Liste mit Verschiedenen Dateien, an verschiedenen Orten, und diese werden erst in ein TMemoryStream geladen um anschließend den Stream mit AddFromStream dem Archiv hinzuzufügen. Dies mache ich so damit ich die gewünschte Verzeichnisstruktur innerhalb des Archivs erhalte.
Delphi-Quellcode:
Die Erstellung des Archivs klappt, die Dateien befinden sich korrekt darin. Aber immer bei der zuletzt hinzugefügten Datei wird das Datum nicht korrekt gesetzt. Es scheint als würde beim abschließenden speichern des Archivs das Datum der letzten Datei verändert. Das Datum wird dann immer auf den Zeitpunkt der Erstellung gesetzt.
var
dtTmp: TDateTime; begin AbZipKit.OpenArchive('test.zip'); MStream := TMemoryStream.Create; try for Index := 0 to High(FileList) do begin //Datei in Stream laden MStream.LoadFromFile(FileList[Index].FilePath); //Stream in Archiv hinzufügen AbZipKit.AddFromStream(FileList[Index].RelativePath, MStream); //Dateidatum ermitteln FileAge(FileList[Index].FilePath, dtTmp); //Dateidatum setzen AbZipKit.Items[AbZipKit.Count-1].LastModTimeAsDateTime := dtTmp; //Hier ist (noch) alles korrekt ShowMessage(DateTimeToStr(AbZipKit.Items[AbZipKit.Count-1].LastModTimeAsDateTime)); end; finally MStream.Free; try; AbZipKit.CloseArchive; AbZipKit.OpenArchive('test.zip'); for Index := 0 to AbZipKit.Items-1 do begin //Alles korrekt bis auf die letzte Datei ShowMessage(DateTimeToStr(AbZipKit.Items[Index].LastModTimeAsDateTime)); end; AbZipKit.CloseArchive; Hat jemand dafür eine Erklärung bzw. eine Idee wie ich das umgehen kann? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:56 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