Einzelnen Beitrag anzeigen

Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.479 Beiträge
 
Delphi 11 Alexandria
 
#1

Wie nutze ich den TResourceStream richtig?

  Alt 15. Dez 2013, 22:31
Habe gerade ein Problem: Im folgenden Beispiel funktioniert die erste Variante, die zweite aber nicht. Warum?
Delphi-Quellcode:
procedure TForm28.FormCreate(Sender: TObject);
var
  ms : TResourceStream;
begin
  Image1.Picture.Bitmap.LoadFromResourceName(HInstance, 'Bitmap_1'); // Variante 1 funktioniert

  if FindResource (HInstance, 'Bitmap_1', 'BITMAP') <> 0 then begin // Variante 2 funktioniert nicht !!
    ms := TResourceStream.create (hInstance, 'Bitmap_1', 'BITMAP'); // (auch mit RT_BITMAP als Type-Qualifizierer nicht)
    Image1.Picture.Bitmap.LoadFromStream (ms);
    ms.Free;
  end;
end;
Es handelt sich um eine VCL-32-Bit Anwendung unter XE5, Windows 7, 64 Bit. Ich habe zuvor unter Menü Projekt, Resourcen und Bilder eine Bitmap-Datei hinzugefügt, als Typ wird im Resourcen-Dialog auch "BITMAP" aufgeführt und als Bezeichner "Bitmap_1".

Die Resource wird auch in die Exe gelinkt, habe ich mit einem Resource-Viewer kontrolliert, klappt schließlich ja auch in der ersten Variante.
  Mit Zitat antworten Zitat