DICAS

Visite a biblioteca de dicas da comunidade.

Saiba mais

ARTIGOS

Abordagens detalhadas sobre assuntos diversos.

Saiba mais

INICIANTES

Aprenda a programar de um modo simples e fácil.

Saiba mais

DOWNLOADS

Acesse os materiais exclusivos aos membros.

Saiba mais
voltar

PARA QUEM GOSTA DE DELPHI

Utilizando diretivas de compilação personalizadas no Delphi

Olá pessoal!

Neste artigo vou demostrar como utilizar um recurso bastante interessante
chamado Diretiva de Compilação.

Normalmente temos que fazer testes internos em nossos sistemas para verificar
se o exe será um DEMO ou se faz uso de módulo X, ou se é um teste e etc…

Para resolver este tipo de situação, pode-se fazer uso das diretivas de compilação.

O próprio Delphi já nos oferece várias, mas agora vamos nos deter as direivas
criadas pelo desenvolvedor.

Exemplo 1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
{$DEFINE TESTE}
unit Unit1;
 
interface
 
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
  System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
procedure TForm1.Button1Click(Sender: TObject);
begin
{$IFDEF TESTE}
  ShowMessage('Utilizando a diretiva TESTE!');
{$ELSE}
  ShowMessage('Sem uso da diretiva TESTE.');
{$ENDIF}
end;
 
end.

Neste exemplo criamos a diretiva “TESTE” e estamos à usando no clique do botão.

Repare que esta forma de declaração {$DEFINE TESTE}, é válida somente pa a unit em questão.

Exemplo 2

Uso da diretiva em todo projeto.

Através do menu Project > Options, na aba Directories/Conditionals você
encontrará o campo “Conditional defines”, adicione a palavra MEU_TESTE.

Agora será utilizado a diretiva para criar uma condição.

1
2
3
4
5
6
procedure TForm1.Button1Click(Sender: TObject);
begin
{$IFDEF MEU_TESTE}
  ShowMessage('Utilizando a diretiva MEU_TESTE!');
{$ENDIF}
end;

Também pode-se incluir o “else”:

1
2
3
4
5
6
7
8
procedure TForm1.Button1Click(Sender: TObject);
begin
{$IFDEF MEU_TESTE}
  ShowMessage('Utilizando a diretiva MEU_TESTE!');
{$ELSE}
  ShowMessage('SEM USO!');
{$ENDIF}
end;

Pronto, agora quando formos compilar o delphi só irá reconhecer o código dentro
de “MEU_TESTE”;

Lembrando que a utilização de Diretivas não se aplica apenas a testes,
mas a muitas outras coisas como por exemplo, para gerar versões do seu executável,
fazer tratamentos conforme situações específicas e etc.

Há também um vídeo que demostra o que foi falado aqui.

Forte abraço e até a próxima!

Facebook Comments Box
  • Giovani Da Cruz
  • 12.670 views
  • 0 comentários
  • 30 de agosto de 2016

Está gostando do conteúdo? Considere pagar um cafezinho para nossa equipe!

Deixe um comentário

Ir ao topo

© 2024 Infus Soluções em Tecnologia - Todos os Direitos Reservados