![]() |
Migration D10.4 to 11.3 Community: Tzipfile.read. Klassenvariable nicht allocated?
Habe heute versucht ein Projekt von 104 auf 113 zu migrieren, das per system.zip.tzipfile dateien aus einer zip datei extrahiert.
In 104 läuft der code einwandfrei, jedoch wird in 11.3 in der unit system.zip Zeile 1732 eine access violation geworfen da offensichtlich eine Klassenvariable nicht erstellt wurde (bzw der class constructor TZipFile.Create nicht aufgerufen wurde)
Delphi-Quellcode:
Es wurde kein Code geändert, derselbe Code läuft in ..10.4.
TZipFile = class
private type TCompressionDict = TDictionary< TZipCompression , TPair<TStreamConstructor, TStreamConstructor > >; private class var FCompressionHandler: TCompressionDict; {..} procedure TZipFile.Read(Index: Integer; out Stream: TStream; out LocalHeader: TZipHeader); {..} 1732: // Create Decompression stream. StreamCons := FCompressionHandler[TZipCompression(FFiles.List[Index].CompressionMethod)].Value; //hier ist das feld FCompressionHandler nicht assigned! Wer kann mir einen Tip geben? |
AW: Migration D10.4 to 11.3 Community: Tzipfile.read. Klassenvariable nicht allocated
Zitat:
|
AW: Migration D10.4 to 11.3 Community: Tzipfile.read. Klassenvariable nicht allocated
Danke, ja habe ich getestet. der Class constructor der Klasse tzipfile wurde nicht erreicht.
Ich habe den Fehler allerdings jetzt behoben, indem ich ein neues Package erstellt habe. Anscheinend wurde das alte Package aus 104 zwar kompiliert, war aber inkompatibel. Also alles in ein neues 114 package gepackt, neu kompiliert. Jetzt wird auch der Class constructor aufgerufen, wie erwartet. |
AW: Migration D10.4 to 11.3 Community: Tzipfile.read. Klassenvariable nicht allocated
Dann könntest du die beiden Packages ja vergleichen. Aber letztlich ist dir ja vermutlich auch nur wichtig, dass es funktioniert.
Es wäre allerdings schön gewesen, wenn du dazu geschrieben hättest, dass es sich um ein Package handelt. ;-) |
AW: Migration D10.4 to 11.3 Community: Tzipfile.read. Klassenvariable nicht allocated
Zitat:
Nur ist das normal, dass bei einem Versionsumstieg die package DPR komplett neu anzulegen sind,, bei den standard-DLLs musste ich nichts an den dpr-Dateien ändern? Ich glaube aber auch, dass ich nicht die Erfahrung habe, jetzt den Code oder den binary output der beiden Kompilate zu vergleichen.Daher bin ich in der Tat froh dass es läuft. Die restliche Migration war ganz ok, wenn man mal davon absieht dass dass "Migration tool" jedes Mail ein Problem mit den Zeilenumbrüchen in den Projektdateien hat, wenn man die Settings von einer Version in die andere migriert und dass die registrierung nur manuell per download der lizenzdatei ging und nicht per zugesandtem Key :? |
AW: Migration D10.4 to 11.3 Community: Tzipfile.read. Klassenvariable nicht allocated
Zitat:
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:04 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 by Thomas Breitkreuz