Hallo Delphifreunde,
habe im Board schon nach sowas wie Prüfsumme und CRC gesucht.
Leider funktionieren die Sachen nicht bei meinem D7.
Die TorryFunktion bringt auch Fehlermeldungen. Da ich noch nicht so fit bin, kann ich mit der Fehlermeldung nichts anfangen.
Hat jemand eine Idee, wie ich es schaffe, eine CRC-Nummer von einer Datei unter D7 zu bekommen
Wäre mehr als dankbar für jeden Hinweis.
Vielen Dank
LingNeu
Delphi-Quellcode:
//Torry-Code
//Fehlermeldung bei Close(F) - zuviele Parameter
function TForm1.GetCheckSum(FileName:
string): DWORD;
var
F:
file of DWORD;
P: Pointer;
Fsize: DWORD;
Buffer:
array [0..500]
of DWORD;
begin
FileMode := 0;
AssignFile(F, FileName);
Reset(F);
Seek(F, FileSize(F)
div 2);
Fsize := FileSize(F) - 1 - FilePos(F);
if Fsize > 500
then Fsize := 500;
BlockRead(F, Buffer, Fsize);
Close(F);
P := @Buffer;
asm
xor eax, eax
xor ecx, ecx
mov edi , p
@again:
add eax, [edi + 4*ecx]
inc ecx
cmp ecx, fsize
jl @again
mov @result, eax
end;
end;