Hi,
ich verwende THash_Md5 aus dem
DEC um den Md5-Hash einer Datei zu ermitteln. Ich habe dafür folgendes Testprogramm geschrieben:
Delphi-Quellcode:
program FileListBuilder;
{$APPTYPE CONSOLE}
uses
SysUtils,
BCUtils,
DECHash,
Classes;
var
FileList: TStrings;
i: Integer;
md5: THash_MD5;
begin
md5 := THash_MD5.Create;
FileList := TStringList.Create;
FindAllFiles(FileList, GoOneDirUp(ExtractFilePath(ParamStr(0))), '*', False, False, True);
for i := 0 to FileList.Count -1 do
FileList[i] := ExtractFileName(FileList[i]) + '=' + md5.CalcFile(FileList[i]);
FileList.SaveToFile(ExtractFilePath(ParamStr(0)) + 'filelist.dat');
FileList.Free;
md5.Free;
end.
Leider kommt bei jeder Datei nur Quark raus:
Code:
BlackListDomains.dat=h3ô@IVRÚÐêKó=mª
BlackListNames.dat=çVp1•ßî^A9‡ãÆž
BlackListValues.dat=˜Òïý†¡ñ+f_WCÃ
CookieCrumbler.exe=*`.QGáH\ZOPŒZ_
sqlite3.dll=|-Är[˳µòu~±D3%
Update.exe=çŵdx~¨ö˜F^ï e5
Der Rückgabewert von CalcFile ist vom Typ Binary welcher ein RawByteString ist. Ich habe auch schon versucht den Rückgabewert nach String zu casten. Ohne Erfolg... Was mache ich falsch?