Einzelnen Beitrag anzeigen

Benutzerbild von Darty
Darty

Registriert seit: 8. Jun 2002
Ort: Kronau
731 Beiträge
 

Bilder in DLL einbinden und aufrufen

  Alt 1. Apr 2003, 23:48
Hier möchte ich zeigen wie man Bilder in eine DLL einbindet und dieses dann auch aufruft.
Wir nehmen mal als Beispiel 3 Jpeg Bilder, mit den folgenden Namen Borland.jpg, Delphi.jpg, Foto.jpg.

Als erstes erstellen wir mit einem Text-Editor die Datei Bilder.rc in der dann folgendes steht:
Delphi-Quellcode:
BILD1 JPEG "Borland.jpg"
BILD2 JPEG "Delphi.jpg"
BILD3 JPEG "Foto.jpg"
Dann erstellen wir in Delphi eine DLL (Neu -> DLL). Der wird dann unter Bilder.dpr gespeichert.
In der steht soll dann folgendes stehen.
Delphi-Quellcode:
library Bilder;

{$R 'Bilder.res' 'Bilder.rc'}

begin
end.
Und dann dieses Projekt erzeugen. Dann hat man eine Bilder.dll erstellt.

Das Bild1.jpg in der DLL wird z.B. so aufgerufen:
Benötigt wird eine Image1. Und da es Jpeg ist muss unter Uses noch JPEG eingefügt werden.
Delphi-Quellcode:
var
  h :HINST;
  r :TResourceStream;
  j :TJpegImage;
  i :integer;
begin
  h := LoadLibrary('Bilder.dll');
  if h <> 0 then
  begin
    r := TResourceStream.Create(h, Bild1, 'Jpeg');
    j := TJpegImage.Create;
      try
        j.LoadFromStream(r);
        Image1.Picture.Bitmap.Assign(j);
      finally
        j.Free;
        r.Free;
      end;
  end;
  FreeLibrary(h);
end;
  else
    RaiseLastOSError();
end;
Nun sieht man Borland.jpg in der Image1. Genauso wird mit den anderen Bilder verfahren. Ist ein einfaches Beispiel bei der die Image1 mit den Bild aus der DLL gefüllt wird

[edit=Daniel B]Delphi-Tags gesetzt. MfG Daniel B.[/edit]
Matthias Knebel
Mfg M. Knebel [-Darty-]
- Gehörlose Delphianer gibt es selten -
www.team-knebel.de
  Mit Zitat antworten Zitat