Fórum Serial do HD #273892
23/03/2005
0
O comprador executa o meu sistema ele funcionara x vezes, quando chegar na ultima execução ele abrira um form onde terá o seu cadastro e o botão enviar, quando eu receber o cadastro tb receberei junto o serial do hd, dai como fazer pra eu mandar um outro serial, que quando ele colocar num edit fara a verificação que este meu serial vou gerado atraves do serial do HD dele e libere o sistema pra sempre.
Se puderem me ajudar ficarei agradecido.
Uoquisala
Curtir tópico
+ 0Posts
23/03/2005
Faelcavalcanti
Falow!
Gostei + 0
24/03/2005
Paullsoftware
mais uso componentes para criptografia que peguei aqui no forum em um tópico só não lembro qual!
mais, tipo asim, pego o serial do HD, pego a data atual e misturo tudo fica mais ou menos assim:::
[color=blue:89ac3be90e][b:89ac3be90e]4CE52A3D41E0263CB2[/b:89ac3be90e][/color:89ac3be90e]
usando o serial de um dos meus HD´s, dai o cliente liga pra mim ou manda um e-mail solicitando que eu vá até a casa dele e em seguida uso essa ´senha´ que ele mandou coloco no programa que fiz para reverter a ´senha´ criptografada e ela me da a chave para destravar o sistema do cliente fica mais ou menos assim:::
[color=blue:89ac3be90e][b:89ac3be90e]8553BE2E[/b:89ac3be90e][/color:89ac3be90e]...
até agora tem funcionado, comigo uso a bastante tempo!!!
qq coisa entra em contato comigo pelo meu msn...! :wink:, mais em breve estarei postando o exemplo aqui no forum!
Gostei + 0
24/03/2005
Uoquisala
Tipo Codigos, ou Codigos comentados ou so o exemplo feito mesmo dai me viro.
Agradeço mesmo
Gostei + 0
25/03/2005
Jose Almeida
function SerialNum(FDrive:string) :string;
var
Serial:DWord;
DirLen,Flags: DWord;
DLabel : array[0..11] of Char;
begin
try
GetVolumeInformation(PChar(FDrive+´:\´),dLabel,12,@Serial,DirLen,Flags,nil,0);
Result := IntToHex(Serial,8 );
except Result :=´´;
end;
end;
{Gera um código alfanumérico a partir de um string}
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;
Gostei + 0
23/12/2010
Luiz Abreu
Gostei + 0
23/12/2010
Alex Bahiano
Rd acesso
http://www.deltress.com.br/rdacesso3/rdacesso.htm#Como%20funciona
ou até mesmo o do Elivaldo
http://elivaldo.com.br/
Bom! ambos, sozinho, não fazem muito efeito para um estudante de engenharia, além deles coloque o
ENIGMA PROTECTOR no seu executável final
http://www.enigmaprotector.com/en/screenshots.html
Assim a dificuldade aumenta a 100%, claro que qualquer tipo de protect na maioria das vezes é irreversível.
Espero ter ajudado.
Gostei + 0
23/12/2010
Luiz Abreu
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)