Здравствуйте всем!
Пытаюсь написать dll которая будет конвертировать jpg в bmp, в delphi эта функция прекрасно работает, а вот экспортировать из dll не получается. Мне нужно чтобы из программы кликнув по кнопке, в dll передавался путь к файлу, а затем там этот jpg файл конвертировался в bmp и функция возвращала бы bitmap который я потом бы мог скопировать в Timage. Вот ниже привожу полностью код dll и самой программы, но увы почему-то не работает Помогите пожалуйста заставить всё это работать, я уже всю голову сломал. Да кстати SaveToClipboardFormat,LoadFromClipboardFormat мне не подходят.
Dот код dll
Код:
library jpgtobmp;
uses
SysUtils,Classes,jpeg,Graphics;
{$R *.res}
function convertjpgtobmp(p:String; bmp:TBitmap): TBitmap; stdcall;
var
JPEG: TJPEGImage;
begin
JPEG := TJPEGImage.Create;
JPEG.LoadFromFile(p);
Bmp.Assign(JPEG);
result:=bmp;
JPEG.Free;
end;
exports convertjpgtobmp;
begin
end.
А вот код моей програмки, из которой я пытаюсь вызвать фунуцию из dll
Код:
unit Convert;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;
function convertjpgtobmp(p: string; bmp:TBitmap):TBitmap; stdcall;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
OpenDialog1: TOpenDialog;
Image1: TImage;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
function convertjpgtobmp; external 'jpgtobmp.dll';
{$R *.DFM}
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if opendialog1.Execute then
convertjpgtobmp(opendialog1.FileName,image1.Picture.Bitmap);
end;
Заранее спасибо.