Como funciona :
Primeiro você coloca os 2 Arquivos responsáveis pela conversão em MD5 :
Wcrypt2.pas, Wcrypt2.dcu na pasta que está o source do seu programa ( onde você salvou o projeto)
Depois :
Você adiciona o .pass na sua uses do seu formulário.
Exemplo :
a uses wcrypt2 é que faz a conversão de texto para MD5, depois de adicionar a uses , vamos adicionar a FUNCTION :
Pronto! a função já foi adicionada no nosso projeto.
Agora vamos criar um breve programa para ver se está funcionando corretamente.
Adicione em seu formulario um :
2 Label (Palheta Standard)
1 Edit (Palheta Standard)
1 Memo (Palheta Standard)
1 Button (Palheta Standard)
Mude o Caption do 1° Label para : Digite um nome/frase :
Mude o Caption do 2° Label para : Em MD5 :
Mude o Nome do Edit para : texto
Mude o Nome do Memo para : Transformado
Clique na opção : Lines do Memo e apague o texto : Memo1
Mude o Caption do Button para : Transformar
Codigos :
Clique duas vezes sobre o button do seu formulário e adicione o codigo :
Explicação do Codigo :
Imagem do Programa :
img21.imageshack.us/img21/6152/md5j.png[/color]
Download Exemplo :
4shared.com/rar/kO9RiISX/Exemplo_bgGames.html
Download Função :
4shared.com/rar/qjTFXF5l/Funo_MD5_bgGames.html
Scan Exemplo "Project1.exe" :
virustotal.com/file/a77570eeec9a06e850867dbb18bf608f1f704258422c7f99756268fd09d8ba4c/analysis/1357988376/
Infelizmente não teve como eu posta os links com o www e muito menos com o link da imagem de download e de scan por causa das permissão do fórum.
Créditos : _Netrunner
Primeiro você coloca os 2 Arquivos responsáveis pela conversão em MD5 :
Wcrypt2.pas, Wcrypt2.dcu na pasta que está o source do seu programa ( onde você salvou o projeto)
Depois :
Você adiciona o .pass na sua uses do seu formulário.
Exemplo :
Código:
var
Form1: TForm1;
implementation
uses wcrypt2;
a uses wcrypt2 é que faz a conversão de texto para MD5, depois de adicionar a uses , vamos adicionar a FUNCTION :
Código:
uses wcrypt2;
{$R *.dfm}
//criar função MD5
//adicionando função Md5 no implementation do formulario.
function md5(const Input: String): String;
var
hCryptProvider: HCRYPTPROV;
hHash: HCRYPTHASH;
bHash: array[0..$7f] of Byte;
dwHashBytes: Cardinal;
pbContent: PByte;
i: Integer;
begin
dwHashBytes := 16;
pbContent := Pointer(PChar(Input));
Result := '';
if CryptAcquireContext(@hCryptProvider, nil, nil, PROV_RSA_FULL, CRYPT_VERIFYCONTEXT or CRYPT_MACHINE_KEYSET) then
begin
if CryptCreateHash(hCryptProvider, CALG_MD5, 0, 0, @hHash) then
begin
if CryptHashData(hHash, pbContent, Length(Input) * sizeof(Char), 0) then
begin
if CryptGetHashParam(hHash, HP_HASHVAL, @bHash[0], @dwHashBytes, 0) then
begin
for i := 0 to dwHashBytes - 1 do
begin
Result := Result + Format('%.2x', [bHash[i]]);
end;
end;
end;
CryptDestroyHash(hHash);
end;
CryptReleaseContext(hCryptProvider, 0);
end;
Result := AnsiLowerCase(Result);
end;
//terminou função de MD5
Pronto! a função já foi adicionada no nosso projeto.
Agora vamos criar um breve programa para ver se está funcionando corretamente.
Adicione em seu formulario um :
2 Label (Palheta Standard)
1 Edit (Palheta Standard)
1 Memo (Palheta Standard)
1 Button (Palheta Standard)
Mude o Caption do 1° Label para : Digite um nome/frase :
Mude o Caption do 2° Label para : Em MD5 :
Mude o Nome do Edit para : texto
Mude o Nome do Memo para : Transformado
Clique na opção : Lines do Memo e apague o texto : Memo1
Mude o Caption do Button para : Transformar
Codigos :
Clique duas vezes sobre o button do seu formulário e adicione o codigo :
Código:
transformado.Lines.Text:= md5(texto.Text);
Explicação do Codigo :
O Valor do Transformado ( Memo ) Será igual ao valor do Texto(Edit) com a função MD5 adicionada na frente do Edit.
Imagem do Programa :
img21.imageshack.us/img21/6152/md5j.png[/color]
Download Exemplo :
4shared.com/rar/kO9RiISX/Exemplo_bgGames.html
Download Função :
4shared.com/rar/qjTFXF5l/Funo_MD5_bgGames.html
Scan Exemplo "Project1.exe" :
virustotal.com/file/a77570eeec9a06e850867dbb18bf608f1f704258422c7f99756268fd09d8ba4c/analysis/1357988376/
Infelizmente não teve como eu posta os links com o www e muito menos com o link da imagem de download e de scan por causa das permissão do fórum.
Créditos : _Netrunner