Esse artigo faz parte da revista Clube Delphi edição 19. Clique aqui para ler todos os artigos desta edição

 

Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML. 

 

O aplicativo rodou a partir do Delphi ?

 

Muitas vezes, criamos algumas funções ou truques para não permitir que nossos componentes sejam copiados por terceiros. A forma mais comum de proteger um componente shareware é liberar o seu uso somente enquanto o Delphi estiver aberto – já que é remota a possibilidade do cliente executar o aplicativo apenas quando o Delphi estiver rodando. Para exemplificar, apresentamos um componente muito simples, que irá simular um comportamento shareware: quando o aplicativo for executado de dentro do Delphi, tudo ocorrerá normalmente. Entretanto, quando o usuário tentar iniciar o executável a partir do Windows Explorer, uma mensagem de aviso será exibida. Esta solução é bastante simples e o código responsável pela verificação pode ser conferido abaixo:

 

// Esta function verifica se o delphi está aberto.

function DelphiRunning:Boolean;

begin

Result :=

  (FindWindow(‘TAppBuilder’,Nil)<>0) and

  (FindWindow(‘TApplication’,Nil)<>0)

end;

 

A function verifica se o Delphi encontra-se em uso. Veja abaixo, como a função DelphiRunning deverá ser usada:

 

No método Constructor do seu componente coloque:

 

if not DelphiRunning then

 begin

...

Quer ler esse conteúdo completo? Tenha acesso completo