Hallo,
ich benutze das
DEC von Hagen. Ich habe eine Textdatei die nur den String 123456789 enthält. Erzeuge ich mit der folgenden Funktion den CRC32, erhalte ich 340BC6D9.
Delphi-Quellcode:
function CRC32CalcFile(const FileName:String): String;
var
FS: TFileStream;
begin
FS := TFileStream.Create(FileName, fmOpenRead);
try
result := IntToHex(CRCCalcEx(CRC_32CCITT, FS.Read), 4);
finally
FS.Free;
end;
end;
Wenn ich jedoch mit dieser Funktion mit dem selben String 123456789 den CRC32 erzeuge, erhalte ich CBF43926.
Delphi-Quellcode:
const
Buf = '123456789';
result := IntToHex(CRCCalc(CRC_32CCITT, PAnsiChar(Buf)^, Length(Buf)), 4);
Müssten nicht bei beiden Funktionen CBF43926 zurückgegeben werden? Laut den Webseiten
http://www.pvlteam.com/doc/crc/testonline.aspx und
http://www.hashsum.com ist CBF43926 der richtige CRC32. Die erste Webseite sagt, dass 340BC6D9 ein CRC32_jamcrc ist. Was muss geändert werden, damit ich auch bei der Datei CBF43926 herausbekomme? Danke!