Bonjour,
J'ai un code qui utilise TZCompressionStream, qui fonctionne sous Delphi 10.4, et qui ne fonctionne plus sous Delphi 11.
Même en simplifiant au minimum, ça ne veut pas fonctionner : j'ai une erreur "invalid zstream operation". En debug, ça s'arrête dans la fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 function TZCompressionStream.Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; begin if (offset = 0) and (origin = soCurrent) then begin result := FZStream.total_in; end else raise EZCompressionError.Create(SZInvalid); <== ici end;
Même en simplifiant au mnimum, ça ne fonctionne pas sous D11 (mais c'est ok sur les versions précédentes) :
Que faut-il changer pour Delphi 11 ??
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 uses system.ZLib; procedure TForm22.Button1Click(Sender: TObject); var xTest : TStringStream; xZip : TZCompressionStream; xContenuZip : TMemoryStream; begin xTest := TStringStream.Create('essai'); xTest.Position := 0; xContenuZip := TMemoryStream.Create; xZip := TZCompressionStream.Create(xContenuZip); xZip.CopyFrom(xTest, xTest.Size); <== exception xZip.Free; end;
Partager