Re: Контрольная сумма файла
От: aGrey Литва  
Дата: 09.09.04 18:46
Оценка:
Здравствуйте, GoldSerg, Вы писали:

GS>Как посчитать CRC файла средствами MFC (или просто), но чтоб это было очень быстро.


MapFileAndCheckSum() из imagehlp, в среднем 1 Гб за 1.5 мин.

Или так даже (Си)

DWORD dwCSum = 1;

for(DWORD n = 0; n < dwBufSize; n++)
{
    dwHBuf[n] = (DWORD)(dwCSum >> 29) + dwHBuf[n];
    dwHBuf[n] = (DWORD)(dwCSum >> 17) + dwHBuf[n];
    dwCSum    = (DWORD)(dwCSum <<  3) ^ dwHBuf[n];
}

Алгоритмов полно. Тут все зависит от того, какая требуется точность...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.