DevMedia - asp.net, Java, Delphi, SQL e web Design, tudo em um só lugar!
Bem vindo a DevMedia!
LOGIN:     SENHA:
 
 

Fórum DevMedia


Autor
Mensagem
Klaus
 


País: Brasil
Estado: RJ
Cidade: são josé v rio preto
Mensagens: 31
 Postado em: 18/5/2012 06:38:09 PM
 
Estou tendo dificuldades para entender e colocar para funcionar uma função que faça com que o programa expire em determinada data. Pesquisei no forum um montão e tentei implementar esta abaixo que gera um código, e tentei fazer gerar com um n. de CNPJ e uma data. Que funcionou, mas como fazer para inserir esta data depois com o prazo de mais 30 dias.
function GeraCod(Cad: string):string;
const
Chave:string = ´j5Klmljk2hUV4A´;
var
Cod:string;
Pdt,Sm,x,y,w:integer;
Psc: array[1..100] of integer;
begin
for x:=1 to 26 do Cod:=Cod+Chr(64+x)+Chr(123-x);
Cad:=Chave+Cad;
Cod:=Cod+Cad;
for y:=1 to Length(Cad) do
begin
x:=0;
repeat x:=x+1;
until Cad[y]=Cod[x];
Psc[y]:=x;
end;
Sm:=0;
Result:=´´;
y:=Length(Cad);
Cod:=´69ADGJMPSVYX147BEHKNQOTWZ258CF0ILRU3´;
for x:=1 to 4 do
begin
for w:=1 to y do
begin
Pdt:=Psc[w]*(y-w+2);
Sm:=Sm+Pdt;
end;
Sm:=(Sm mod 36)+1;
Result:=Result+Cod[Sm];
y:=y+1;
Psc[y]:=Sm;
Sm:=0;
end;
end;

function GeraSenha(Str: string): string;
begin
Result:=GeraCod(Str);
Result:=Result+´-´+GeraCod(Result);
Result:=Result+´-´+GeraCod(Result);
end;

end.


{Teste do código}

procedure TForm1.FormActivate(Sender: TObject);
begin
Edit1.Text:=(GeraCod(SerialNum(´C´)));
Label1.caption:=´Chave: ´+GeraSenha(Edit1.Text);
end;

{Para testar , digite a Chave no Edit2}

procedure TForm1.Button1Click(Sender: TObject);
begin
if Edit2.Text=GeraSenha(Edit1.Text)then
ShowMessage(´Chave Confere´)else
ShowMessage(´Chave Não Confere´);
end;

BRUNO LEANDRO
 

 


País: Brasil
Estado: SP
Cidade: Tupã
Mensagens: 554
 Postado em: 19/5/2012 10:14:52 AM
 
uma ideia seria guardar a chave no banco, ou em um arquivo, ou no registro do windows, são alguns exemplos. ai para atualizar mais trinta dias, voce enviaria um update, ou outro arquivo.
Klaus
 


País: Brasil
Estado: RJ
Cidade: são josé v rio preto
Mensagens: 31
 Postado em: 20/5/2012 06:24:15 PM
 
Bruno, a idéia é guardar no BD criptografado, mas preciso entender este codigo e como inserir ele no programa, pois fiz uns testes tentando mudar onde está chave = string= .... e não consegui, gostaria de inserir nesta string uma data atraves de uma edit, que seria a data que iria expirar o programa.
RICARDO PAIXAO
 


País: Brasil
Estado: SP
Cidade: SAO PAULO
Mensagens: 47
 Postado em: 21/5/2012 08:08:48 AM
 
O que eu geralmente faço é o seguinte, tenho uma funçao que o programa checa toda vez que abre onde verifica dentro do banco mes e ano, se encontrar e se o numero que estiver la bater ao calculo da funçao abre o programa caso contrario solicita a chave para o mês
Klaus
 


País: Brasil
Estado: RJ
Cidade: são josé v rio preto
Mensagens: 31
 Postado em: 21/5/2012 06:08:20 PM
 
Ok Ricardo, também acho que seria este o procedimento correto, mas não sei como usar a função acima e gostaria que alguém me explicasse, se não for muito díficil, pois quero usá-la para inserir uma chave no BD (cript) e poder recuperá-la e checar sua validade e inserir uma nova data mes a mes.
web-03
DevMedia  |  Anuncie  |  Fale conosco
Hospedagem web por Porta 80 Web Hosting
2013 - Todos os Direitos Reservados a web-03