Mam problem z dll'em. Oto jego kod:
library gif;
uses
GifImage, Graphics;
{$R *.res}
type
PBitmap = ^TImageBitmap;
TImageBitmap = packed record
Bitmap: TBitmap;
Width, Height: integer;
end;
procedure ConvertToBmp(filename: pchar; Bitmap: PBitmap); stdcall;
var
graphic: TGifImage;
begin
graphic := TGifImage.Create;
graphic.LoadFromFile(filename);
Bitmap^.Width := graphic.Width;
Bitmap^.Height := graphic.Height;
Bitmap^.Bitmap.Width := graphic.Width;
Bitmap^.Bitmap.Height := graphic.Height;
Bitmap^.Bitmap.Canvas.Draw(0,0,graphic);
graphic.Free;
end;
exports
ConvertToBmp name 'ConvertToBmp';
begin
end.
Gdy wywołuje procedure z tego dll'a w formie programu to po 3 wywołaniach występuje AccessViolation :[ Dodam że dll'a ładuje dynamicznie przy onCreate formy (ale statycznie też nie działa)! Gdy samą procedure skopiuje do formy i wykonam to działa bez problemu. :/ Co jest nie tak, tylko co???
Pomocy!!!!! :[ :[
// Stosuj tag Delphi, nie Code - detox