function CompFile(const f1,f2: string): Boolean; var ms1,ms2: TMemoryStream; i,p: Integer; b1,b2: Byte; begin Result := False; if not (FileExists(f1) and FileExists(f2)) then Exit;
if ms1.Size <> ms2.Size then begin ms1.Free; ms2.Free; Exit; end;
Result := True; Randomize; for i := 0 to 9 do begin p := Random(ms1.Size); ms1.Position := p; ms2.Position := p; ms1.ReadBuffer(b1,1); ms2.ReadBuffer(b2,1); if b1 <> b2 then begin Result := False; Break; end; end;
function CompFile(const f1,f2: string): Boolean; var fs1,fs2: TFileStream; ms: TMemoryStream; i,p: Integer; b1,b2: Byte; begin Result := False; if not (FileExists(f1) and FileExists(f2)) then Exit; fs1 := TFileStream.Create(f1, fmOpenRead); fs2 := TFileStream.Create(f2, fmOpenRead);
if fs1.Size <> fs2.Size then begin fs1.Free; fs2.Free; Exit; end;
Result := True; Randomize; for i := 0 to 9 do begin p := Random(fs1.Size); fs1.Position := p; fs2.Position := p; fs1.ReadBuffer(b1,1); fs2.ReadBuffer(b2,1); if b1 <> b2 then begin Result := False; Break; end; end;