Como declarar Dll´s

Delphi

24/10/2003

fiz uma dll que se chama teste.dll,


dentro dela implementei umas funções bem tontas como somar dois numeros e retornar o resulatado.

blz,

agora como eu chamo esta funções do meu programa feito em delphi,
andei dando uma olhada, e achei varia coisas diferentes uns parametros estranhos, oque eles são?

external
stdlib e muitos outros


agradeço desde já


Smaug_84

Smaug_84

Curtidas 0

Respostas

Henry

Henry

24/10/2003

Brother, tente coloca a DLL na pasta do executavel e declare o nome da DLL na clausula Uses. Ai tente usar as funções normalmente. Qualquer coisa entre em contato comigo, blz?

Um abraço, Henry.


GOSTEI 0
Smaug_84

Smaug_84

24/10/2003

ainda nao deu certo


GOSTEI 0
Beppe

Beppe

24/10/2003

Tipow, se tu tens na dll uma rotina assim:
function Soma2(X, Y: Integer): Integer;
begin
  Result := X + Y;
end;


então tu importa ela assim:
function Soma2(X, Y: Integer): Integer; external ´Minha_dll.dll´;


Ataliba


GOSTEI 0
Marcelo Saviski

Marcelo Saviski

24/10/2003

A sua Dll deve ser + ou - parecida com isso:

library Teste;

function Soma(Valor1, VAlor2: Integer): Integer;
begin
  Result := valor1 + Valor2;
end;

exports
  Soma;

begin

end.


O [color=green:402381eeb2]exports Soma;[/color:402381eeb2] significa que você está exportando essa função [color=green:402381eeb2](Soma)[/color:402381eeb2], para poder usar uma função que entá dentro de uma Dll, ela deve ser exportada

no seu programa, que irá usar a função da dll, faça algo como:



.....................
var
  Form1: TForm1;

implementation

{$R *.DFM}

{Funções importadas da DLL}
function Soma(Valor1, Valor2: Integer): integer; name ´Soma´ external ´Teste.dll´;
............................


para usar a função, faça normalmente omo faria se o código da função estivesse junto com o programa:

var
  Resultado_Soma: Integer;
begin
  Resultado_Soma := Soma(10, 15);
end;



GOSTEI 0
POSTAR