Thema: Delphi Image from Stream laden?

Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#15

AW: Image from Stream laden?

  Alt 3. Mär 2013, 23:10

Delphi-Quellcode:
        if tb.FieldAsBlob(tb.FieldIndex['picture']) <> nil then
        begin
          // ms := TMemoryStream.Create; NEIN! Speicherleck!
          ms := tb.FieldAsBlob(tb.FieldIndex['picture']);
          ms.Position := 0;
          DetailsMediaImage.Picture.LoadFromStream(ms);
        end
        else
          DetailsMediaImage.Picture.LoadFromFile(ExtractFilePath(ParamStr(0)) + 'books.jpg');
Sag ma wieso wird da Speicherleck erzeugt?
Ich will es mal mit einem Beispiel aus der Realität veranschaulichen:
Code:
Ich leihe mir ein Auto vom Autoverleiher
Mit dem Auto vom Chef mache ich meine Besorgungen
Wenn du das jetzt öfters machst, dann hast du den Hof voller gemieteter Wagen stehen und musst dir auch noch die Frage gefallen lassen, warum du die überhaupt angemietet hast.

Ok, versuchen wir es mal anders
Code:
Ich leihe mir ein Auto vom Autoverleiher
Mit dem Auto vom Chef mache ich meine Besorgungen
Dieses Auto gebe ich bei dem Autoverleiher wieder ab
MÖÖÖÖP - Der Verleiher schaut mich ungläubig an und der Chef ist kurz vor der Kernschmelze, es ist sein Auto

Also
  • entweder ich leihe mir das Auto vom Verleiher, benutze es und gebe auch dieses geliehene Auto wieder ab
  • oder ich nehme das Auto vom Chef (weil es da ist und keine Leihgebühren kostet)
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat