序言
上一篇的那个小的idea还在继续实现中,这次来获取Hash值,首先是字符串的Hash值,之后是文件的Hash值。需要一步一步的来。环境同样是Delphi XE6。
获取MD5
获取字符串的MD5 Hash值其实挺简单的,但是由于我对这门语言不是熟练级别的,在网上走了很多弯路子。首先界面很简单,Edit,Button,Label控件各一个。直接上Delphi代码了:
unit unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms, Vcl.Dialogs,
Vcl.StdCtrls, {System.Hash,} IdHashMessageDigest,IdGlobal, IdHash;
type
TForm1 = class(TForm)
Edit_1: TEdit;
Button_1: TButton;
Label_1: TLabel;
procedure Button_1Click(Sender: TObject);
function getMd5HashString(value: string): string;
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
function TForm1.getMd5HashString(value: string): string;
var
hashMessageDigest5 : TIdHashMessageDigest5;
begin
hashMessageDigest5 := nil;
try
hashMessageDigest5 := TIdHashMessageDigest5.Create;
Result := IdGlobal.IndyLowerCase ( hashMessageDigest5.HashStringAsHex ( value ) );
finally
hashMessageDigest5.Free;
end;
end;
procedure TForm1.Button_1Click(Sender: TObject);
begin
Label_1.Caption := getMd5HashString(Edit_1.Text);
end;
end.
经测试编译后运行是正常的,结果与Python3.7进行对比,测试结果如下:
结语
本次完成了字符串的Hash计算,后面要学习一下文件的Hash计算,尽快把这个idea完善。
如有错误,敬请指出,感谢指正! — 2020-05-31 16:20:35
最新评论
我想请问下。您这部署后能够上传附件图片吗?我按照您的方式部署后。能运行。但是无法上传附件,图片。
感谢教程,但是我安装后无法上传附件。图片什么的都上传不了。您这可以吗
你这个能够添加附件图片吗?我怎么无法上传图片附件呢。。
这个软件有bug的,客户端windows有些键不能用如逗号、句号
没有收到邮件通知
我的评论通知貌似坏掉了,定位一下问题
测试一下重新部署后的邮件功能
居然看到自己公司的MIB库,诚惶诚恐