Einzelnen Beitrag anzeigen

Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: TPNGImage in TGPImage umwandeln

  Alt 7. Mär 2017, 23:31
Der IStream-Parameter von FromStream ist als const deklariert. Das setzt die Referenzzählung außer Kraft. Eine lokale IStream-Variable schafft hier Abhilfe.

Delphi-Quellcode:
       stream := TStreamAdapter.Create(ImageStream);

       // TGPImage von Stream erzeugen
       Image := TGPImage.FromStream(stream);
Das ist ein Problem das schon wirklich oft aufgetreten ist, aber Embarcadero ignoriert das seit ewig. Bei anderen Managed Types funktioniert es bei interfaces nicht. Das könnte der compiler beheben.....
Und das es machbar ist wird zb mit Strings bewiesen. Es mag ein definiertes Verhalten sein aber das macht es nicht richtig.
Versuche das mal einem Neuling beizubringen....
(Ps: Uwe , ich denke das Problem ist Dir sehr wohl bekannt, ich habe vor Jahren mit Barry Kelly darüber gesprochen, Aussage : "They dont want it")
Fritz Westermann
  Mit Zitat antworten Zitat