AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MD5-Prüfroutine für Delphi 10.2

Ein Thema von Harry Stahl · begonnen am 26. Nov 2017 · letzter Beitrag vom 29. Nov 2017
 
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#24

AW: MD5-Prüfroutine für Delphi 10.2

  Alt 29. Nov 2017, 08:43
Zitat:
Deine Lösung mag zwar schneller sein, aber selbst mit der simplen eingebauten Prozedur MD5File aus md5.pas Lösung mit max. 64 KB Buffer hat man keine wesentlichen Geschwindingkeitseinbußen:
Hier muss ich nur fragen, wie man MD5File verwendet? Es gibt ja keinen Rückgabewert.
Delphi-Quellcode:
procedure MD5File(const fname: Str255; var Digest: TMD5Digest; var buf; bsize: word; var Err: word);
{-MD5 of file, buf: buffer with at least bsize bytes}
Und als Kommentar in Hash.HashFile: {-Calculate hash digest of file, buf: buffer with at least bsize bytes}

Das Ergebnis Digest ist ein Var-Parameter! Außerdem hast Du noch einen Error-Code Err, falls ein Fehler auftritt.

Was willst Du mehr?

Edit: Hier das ganze als Komplett-Programm (diesmal mit 32KB-Puffer)
Delphi-Quellcode:
{$Apptype console}
uses
  hash, md5, mem_util;
const
  BSIZE = $8000;
var
  buf: array[0..BSIZE-1] of byte;
  Digest: TMD5Digest;
  Err: word;
begin
  if paramcount>0 then begin
    MD5File(paramstr(1),Digest, buf, sizeof(buf), Err);
    if Err<>0 then writeln('Error ', Err)
    else writeln('MD5 = ', HexStr(@Digest, sizeof(Digest)));
  end
  else writeln('Usage: MD5F <file>');
end.
und noch mal das 512MB-Testfile
Code:
D:\Work\CRC_HASH>timethis md5f.exe 512MB_A

TimeThis : Command Line : md5f.exe 512MB_A
TimeThis :   Start Time : Wed Nov 29 10:15:22 2017

MD5 = 31e4d9c6d74cd592b78f77f72965d6ab

TimeThis : Command Line : md5f.exe 512MB_A
TimeThis :   Start Time : Wed Nov 29 10:15:22 2017
TimeThis :     End Time : Wed Nov 29 10:15:24 2017
TimeThis : Elapsed Time : 00:00:02.610

Geändert von gammatester (29. Nov 2017 um 09:19 Uhr) Grund: Beispiel
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:48 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz