![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
![]() |
Как вычислить CRC (контрольную сумму) для файлаDelphi , Синтаксис , ШифрованиеКак вычислить CRC (контрольную сумму) для файлаАвтор: http://www.swissdelphicenter.ch function 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; procedure TForm1.Button1Click(Sender: TObject); begin ShowMessage(IntToStr(GetCheckSum('c:\Autoexec.bat'))); end; Статья Как вычислить CRC (контрольную сумму) для файла раздела Синтаксис Шифрование может быть полезна для разработчиков на Delphi и FreePascal. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Шифрование ::
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 ![]() |