Hallo,
ich würde gerne ein Metafile als benutzerdefinierte Resource in eine DLL einbinden. Dazu benutze ich folgende Funktion:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| function TIfiplot.LoadLogoFromResource: TMetafile; var ResHandle : LongWord; MemHandle : THandle; MemPtr : Pointer; Size : LongWord; begin ResHandle := FindResource(0, '#1', 'METAFILE'); if ResHandle <> 0 then begin Size := SizeOfResource(0, ResHandle); MemHandle := LoadResource(0, ResHandle); MemPtr := LockResource(MemHandle); Result := TMetafile.Create; Result.Handle := SetEnhMetafileBits(Size, MemPtr); end else Result := nil; end; |
Der Inhalt der RC-Datei sieht so aus:
Quelltext
Die compilierte RES-Datei wird mit folgender Anweisung eingebunden:
Delphi-Quelltext
FindResource liefert aber immer 0. Wenn ich auf die gleiche Art ein Icon (vordefinierter Resourcetyp) einbinde, funktioniert es einwandfrei. Wer weiß Rat?
Gruß Dirk