| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > VB6 > Проверка crc файла |
| Автор: melx 19.7.2004, 08:20 |
| Каким образом подсчитать контрольную сумму в файле exe ? |
| Автор: melx 19.7.2004, 09:27 |
| Т.е. произвести бинарное чтение файла, с подсчетом контрольной суммы. |
| Автор: Malex 19.7.2004, 09:53 |
| FF = FreeFile a = String$(5, " ") Open putt For Binary As #FF Seek #1, 1000 ' чтобы опустить заголовок exe Do Until (EOF(1)) Get #FF, sum, a sum = sum + 5 For I = 1 To Len(a) k1b = Asc(Mid$(a, I, 1)) sum1 = sum1 + k1b * sum: If sum1 > 256 Then sum1 = sum1 - 256 * Int(sum1 / 256) Next I Loop Close #FF ' скажем так sum ведет счетчик, по 5 байтов (можно увеличить) ' а sum1 суммирует crc файла. Суммируется значением байта от компьютера умноженного на позицию файла. Пойдет? Может правда другой что нибудь кто-то скажет. |
| Автор: gromstar 22.3.2006, 19:35 |
| а как подсчитать контрольную сумму любого файлаи, если можно с описанием алгоритма? |
| Автор: cardinal 22.3.2006, 19:46 |
| Первое что мне google выкинул... http://vb-tec.de/crc.htm |
| Автор: Akina 22.3.2006, 19:47 |
| Вообще-то есть несколько разных (причем принципиально разных) алгоритмов подсчета CRC... кто хочет осмысленного совета - задает осмысленный вопрос. |
| Автор: Velin 22.3.2006, 20:28 |
| Ну самый простой, отключить в VB проверку переполнения и суммировать все байты. И будет вам простешая CRC. |
| Автор: gromstar 23.3.2006, 11:17 |
| cardinal, Еще раз огромное спасибо!!! |
| Автор: SCINER2 27.3.2006, 07:28 |
| http://forum.sources.ru/index.php?act=ST&f=144&t=131528&st=0#entry1005829 |