Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

como criar uma Dll no delphi


Bloed
 Compartilhar

Posts Recomendados

Uma dúvida de muitos que iniciam os estudos em programação Delphi (e eu fui um destes) é com relação às DLLs, inúmeras dúvidas aparecem durante os estudos como: "Como usar uma DLL em minha aplicação?", "Como posso Criar uma DLL?", ou ainda "o que é uma DLL?".

Então este artigo vem com objetivo de esclarecer um pouco sobre DLLs. Vamos lá!!

 

DLL ou Dinamic Link Libraries, permite que um conjunto de funções desenvolvidas em uma determinada linguagem de programação possam ser utilizadas em programas desenvolvidos em outras linguagens. Ou seja, você pode criar uma DLL em Delphi (e neste artigo iremos criar uma como exemplo) com um conjunto de funções e utilizá-la em aplicativos desenvolvidos em linguagens como C++ ou Visual Basic (VB) entre outras.

 

Pois bem, siga os seguintes passos para criar a sua primeira DLL:

 

1 - Selecione o item New do menu File, logo após será exibida uma caixa de diálogo com o caption New Items. Selecione o ítem DLL Wizard e clique em Ok.

 

2 - Logo após aparecerá um campo para que você escreva os códigos da sua DLL, apenas como base para compreensão insira os códigos abaixo (estão comentados para facilitar no aprendizado):

 

{ aqui é o início da DLL, onde você insere o nome do projeto }

 

library Nome_do_seu_projeto;

 

Uses {declaração das units }

SysUtils, Classes;

{declaração de uma função MaiorValor}

function MaiorValor(num1, num2 : double):double:expert:stdcall:

begin

if (num1 > num2) then result:= num1 else result := num2;

end;

 

exports

MaiorValor index 1;

 

Begin

 

end.

 

3 - Bem, agora é só compilar esta DLL como sendo qualquer outro projeto Delphi, agora só não tente executar esta DLL pelo Delphi usando o Run (F9) do menu Run, pois você não irá conseguir, pois não se trata de uma aplicação. Note que ao compilar foi gerado um arquivo nome_do_seu_projeto.dll no diretório em que está salvo o seu projeto.

 

4 - Agora vamos testar esta dll. Inicie um novo projeto e insira no formulário duas caixas de texto, 2 labels e um botão para que possamos testar a nossa DLL. Nos Labels altere o caption de cada um para numero 1 e numero 2, e altere o caption do botão para Calcular, e por fim apague o texto dos TEdits.Dê um duplo click sobre o botão.

 

Observe abaixo o código do novo projeto:

 

unit usandodll;

 

interface

 

uses

 

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

 

type

 

TForm1 = class(TForm)

Label1: TLabel;

Label2: TLabel;

Button1: TButton;

Edit1: TEdit;

Edit2: TEdit;

 

procedure Button1Click(Sender: TObject);

 

private

{ Private declarations }

public

{ Public declarations }

end;

 

function MaiorValor(num1, num2 : double):double;stdcall;

 

var

 

Form1: TForm1;

 

implementation

 

{$R *.DFM}

 

{a opção abaixo external da função é para que você coloque o nome da sua função, aqui você chama o acesso externo para esta função}

 

function MaiorValor(num1, num2 : double):double;external 'nome_da_sua_dll.DLL';

 

procedure TForm1.Button1Click(Sender: TObject);

 

var

 

x, y, resultado : double;

 

begin

x := StrToFloat(Edit1.Text);

y := StrToFloat(Edit2.Text);

resultado := MaiorValor(x,y);

ShowMessage('O maior valor entre os número digitados foi: ' +FloatToStr(resultado));

end;

 

end.

 

Então se você pode notar a função MaiorValor está declarada na seção interface e implementada na seção implementation, ou seja, a função está implementada em uma DLL na qual fazemos o uso dela usando o "external 'nome_da_dll.dll'.

 

com o uso de DLLs você pode fazer com que sejam criados em tempo de execução formulário e/ou mensagens de alertas na sua aplicação.

 

Vale lembrar que para uso desta DLL você deve utilizar também a Dll DELPHIMM.DLL para que funcione corretamente.

 

Bem pessoal é isso aí, o uso de Dlls é bastante utilizado em grandes aplicações, facilitando o desenvolvimento, tendo em vista que uma DLL pode ser usada inúmeras vezes e em diferentes linguagens.

 

Grande Abraço!!!

 

Creditos : bloed ( pelo post , e éla long meia hora escrevendo isso *-* )

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.