Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //diimplementasi lancar di Delphi7 dan Delphi RIO 10.3.3
- function Md5Checksum: string;
- var
- IdMD5: TIdHashMessageDigest5;
- FS: TFileStream;
- FileName: String;
- begin
- FileName := Paramstr(0);
- IdMD5 := TIdHashMessageDigest5.Create;
- FS := TFileStream.Create(FileName, fmOpenRead or fmShareDenyWrite);
- try
- Result := LowerCase(IdMD5.HashStreamAsHex(FS));
- finally
- FS.Free;
- IdMD5.Free;
- end;
- end;
- function ProgramVersion: string;
- var
- VerInfoSize: DWORD;
- VerInfo: Pointer;
- VerValueSize: DWORD;
- VerValue: PVSFixedFileInfo;
- Dummy: DWORD;
- sFileName: string;
- begin
- sFileName := paramstr(0);
- VerInfoSize := GetFileVersionInfoSize(PChar(sFileName), Dummy);
- GetMem(VerInfo, VerInfoSize);
- GetFileVersionInfo(PChar(sFileName), 0, VerInfoSize, VerInfo);
- VerQueryValue(VerInfo, '\', Pointer(VerValue), VerValueSize);
- with VerValue^ do
- begin
- Result := IntToStr(dwFileVersionMS shr 16);
- Result := Result + '.' + IntToStr(dwFileVersionMS and $FFFF);
- Result := Result + '.' + IntToStr(dwFileVersionLS shr 16);
- Result := Result + '.' + IntToStr(dwFileVersionLS and $FFFF);
- end;
- FreeMem(VerInfo, VerInfoSize);
- end;
Add Comment
Please, Sign In to add comment