Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Limitierte Dateigröße mit SingleFileDataStorage? (https://www.delphipraxis.net/182441-limitierte-dateigroesse-mit-singlefiledatastorage.html)

shadowman 24. Okt 2014 11:20

Limitierte Dateigröße mit SingleFileDataStorage?
 
Hallo,

hat jemand Erfahrungen mit SingleFileDataStorage?

Ich setze es ein und musste nun festellen, dass die damit erzeugten Dateien - anders als beschrieben - nicht beliebig groß sein können. Einen genaueren Wert muss noch herausfinden, aber die Dateien bei denen es aufgefallen ist (3,8 bis 4 GB) sind korrupt und können nach Erstellung von SFDS selbst nicht gelesen werden, weil MD5-Checks fehlschlagen usw.

Die Beschreibung
Zitat:

Large file support (64-bit size) lets you store all the data you need in SFDS files of virtually unlimited size.
und die verlinkte Version scheinen also nicht zusammen zu passen. War auch bzgl. Unicode so. Sollte angeblich möglich sein, war es aber nicht, wie ich hier vor einiger Zeit mal beschrieben hatte. Nun das mit der Größe...

Falls jemand Erfahrungen damit / Ideen dazu hat, sind sie willkommen :)

hathor 24. Okt 2014 11:58

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
HTFS oder FAT32?
HTFS zwingend erforderlich, ersatzweise auch exFAT.

himitsu 24. Okt 2014 12:06

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Sind die 4 GB auf die Gesamtdatei bezogen, oder auf eine der Dateien darin?

Bei Gesamtdatei sah es so aus, als wenn es eine Exception geben müsste, wenn man an die Grenzen des Dateisystem (z.B. FAT32) stößt.
(kann aber sein, daß ich auf die Schnelle nicht alle Dateizugriffe gesehn hab.)



Und welche Delphi-Verison?
Im Code wird zwar an vielen Stellen mit AnsiString gearbeitet, aber bei 2007 kann man nicht sicher sein, ob es da nicht doch noch ein paar Bugs gibt.
Was gibt denn der Compiler für Meldungen aus?


[edit]
Vielleicht ist ja hier was Alternatives dabei.
http://17slon.com/gp/gp/gpstructuredstorage.htm
http://msdn.microsoft.com/en-us/libr...69(VS.85).aspx
http://www.delphipraxis.net/176827-v...wendungen.html

Ansonsten (falls es nicht auf Geschwindigkeit an kommt) könntest auch eine der Zip-Komponenten verwenden.

shadowman 24. Okt 2014 12:33

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Zitat:

Zitat von hathor (Beitrag 1277296)
HTFS oder FAT32?
HTFS zwingend erforderlich, ersatzweise auch exFAT.

Ist zuerst beim Kunden aufgefallen und da dachte ich als erstes auch an FAT32, war aber NTFS und bei mir (aucn NTFS) kann ich es ebenfalls reproduzieren. Also "leider" liegts nicht daran.

Zitat:

Zitat von himitsu (Beitrag 1277297)
Sind die 4 GB auf die Gesamtdatei bezogen, oder auf eine der Dateien darin?

Bei Gesamtdatei sah es so aus, als wenn es eine Exception geben müsste, wenn man an die Grenzen des Dateisystem (z.B. FAT32) stößt.
(kann aber sein, daß ich auf die Schnelle nicht alle Dateizugriffe gesehn hab.)

Ist bereits bei der Gesamtdatei so, die aus vielen kleineren Dateien entsteht. Da das Dateisystem aber NTFS ist, dürfte es keine (oder sehr hohe) Limits geben.


Zitat:

Zitat von himitsu (Beitrag 1277297)
Und welche Delphi-Verison?
Im Code wird zwar an vielen Stellen mit AnsiString gearbeitet, aber bei 2007 kann man nicht sicher sein, ob es da nicht doch noch ein paar Bugs gibt.
Was gibt denn der Compiler für Meldungen aus?

Ich setze es unter Delphi XE ein (und dort dann die Version, in der ich die Anpassungen an Unicode vorzunehmen versucht habe (schien / scheint zu funktionieren), aber wenn diese Umstellung bei der Dateigrößenproblematik auch eine Rolle spielt, dann habe ich vielleicht was übersehen... Habe nicht erwartet, dass das eine Rolle spielen könnte.

Ich habe auch eine Delphi 7 Installation da, könnte es damit mal probieren. Da ist die unveränderte Version installiert.

Bin jetzt gerade dabei, mich schrittweise an die Größe heranzutasten, ab der die Datei als ungültig erkannt wird.

Danke, werde ich mir anschauen. Hatte schon mal nach Alternativen geguckt, aber kaum etwas gefunden bzw. aufgrund der größeren Umstellung erstmal nicht weiter verfolgt. "gpstructuredstorage" war damals schon mal dabei, denke ich.

hathor 24. Okt 2014 12:41

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe mal eine mitgelieferte Demo Basic SFDS File Creator getestet.
Ergebnis: Eine Größe von 3,9 GB wird bei mir nicht überschritten, obwohl mehr Daten drin sein müssten. Siehe Anhang:

shadowman 24. Okt 2014 12:53

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Hm, wie viel mehr müsste drin sein? Vielleicht die Komprimierung? Sonst würde das ja bedeuten, dass das Tool ab einem bestimmten Wert einfach aufhört die Datei zu schreiben und sie dann selbst als ungültig einstuft... Ich habe hier eine Datei mit der Größe von 4,00 GB (4.298.860.637 Bytes) (erstellt mit meinem Programm, sollte aber die gleiche Funktionalität sein)

himitsu 24. Okt 2014 13:08

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Das Ding greift stückchenweise, über einen selbstgebauten Stream, auf die SFDS-Datei zu.

Vermutung: Dort wird irgendwo mit einem "Integer" gearbeitet und größere Positionen werden daher auf 32 Bit abgeschnitten.

hathor 24. Okt 2014 13:37

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Zitat:

Zitat von shadowman (Beitrag 1277305)
hm, wie viel mehr müsste drin sein? Vielleicht die komprimierung? Sonst würde das ja bedeuten, dass das tool ab einem bestimmten wert einfach aufhört die datei zu schreiben und sie dann selbst als ungültig einstuft... Ich habe hier eine datei mit der größe von 4,00 gb (4.298.860.637 bytes) (erstellt mit meinem programm, sollte aber die gleiche funktionalität sein)


4,04 GB (4.338.868.224 Bytes)

hathor 25. Okt 2014 07:46

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Suche Dir ein anderes Programm aus:
http://en.wikipedia.org/wiki/Compari...file_archivers

Ich würde 7-Zip nehmen:
http://en.wikipedia.org/wiki/7-Zip

hathor 25. Okt 2014 16:30

AW: Limitierte Dateigröße mit SingleFileDataStorage?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe mal 7-Zip getestet - Free Demo von hier:
http://www.rg-software.de/files/SevenZipVCL_076.zip

Macht einen guten Eindruck.
Getestet mit WIN8.0 und XE2.
NICHT vegessen: 7za.dll in das WINDOWS-Verzeichnis kopieren!
Ist im Anhang.

Zitat:
You will also need the 7za.dll from sourceforge !! Ist im Anhang !!
The dll is in the extra.tar.bz2 package.
Dll version 4.42 is included in the package.
New 0.71: Multivolume support, password support.
New 0.72: Fixed 4GB limit, some other bugs ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:52 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz