Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
Delphi 12 Athens
|
AW: Encrypted ZipFile
31. Mär 2020, 12:52
Ich hoffe ja die machen das im Setter von Position richtig. (sollten/müssten sie eigentlich, und da es funktioniert, scheint es so).
Das Problem ist ja, dass man die Verschlüsselung nicht rückwärts laufen lassen kann.
* Beim Sprung vorwärts kann einfach das dazwischen gelesen werden, um die Verschlüsselung fortzuführen.
* Beim Sprung zurück bleibt nur die Möglichkeit zum Anfang zu springen, alles zurückzusetzen und wieder bis zur neuen Position zu lesen, um die Verschlüssekung auf diese Stelle zu schieben.
Man könnte das jetzt noch optimieren, indem man Marker erstellen lässt, bzw. regelmäßig welche einfügt,
also an gewissen Stellen sich Position+ZustandDerVerschlüsselung speichert, womit man dann "schnell" zu diesen Positionen springen, die Verschlüsselung zurückzusetzen und dort fortfahren zu können, ohne immer wieder komplett zum Anfang zurück zu müssen.
Im Prinzip macht ResetStream+Skip ja eigentlich alles richtig ... k.A. warum es damit Probleme gibt.
Einzig, was ich mir vorstellen kann, bei über 2 GB (hab nicht nachgesehn), dass Skip nicht mit 64 Bit arbeitet und dann die falsche Position anspringt (Integerüberlauf).
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
Geändert von himitsu (31. Mär 2020 um 12:54 Uhr)
|