![]() |
TBitmap Prozeduren in DLL
Ich habe ein Problem mit einer dll, welche verschiedene Prozeduren für das Arbeiten mit Bitmaps beinhalten soll. Da ich bislang nur mit Funktionen gearbeitet habe, welche als Ergebnis Integer oder PChars liefern, wollte ich zunächst sehen, ob es überhaupt möglich ist mit TBitmap in einer dll zu arbeiten.
Nur um zu testen, wollte ich die dll eine einfache savtofile Operation durchführen lassen, das sieht wie folgt aus:
Code:
Meine Application sieht so aus:
procedure Save(Bmp: TBitmap) stdcall;
begin bmp.SaveToFile('c:\gfx.bmp'); end; exports Save;
Code:
Das Ergebis ist ein lees File gfx.bmp. Das andere Ergebnis ist, das das Image in welches ich ein Bitmap importiert habe scheinbar geleert wird.
procedure Save(Bmp: TBitmap); stdcall; external 'gfxlib.dll';
{$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin Save(image1.Picture.Bitmap); end; Graphics habe ich eingebunden und testweise auch mal Sharemem. Wenn letztere Unit in dll und Application vorhanden ist, erhalte ich beim beenden eine "Invalid pointer Operation". Mach ich da irgendwo einen Denkfehler? Gruss p0ke |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz