Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Антивирусная защита, Проверка файла, С++

21K
12 декабря 2006 года
megasasha
5 / / 12.12.2006
ЗДРАВСТВУЙТЕ!

Несколько лет назад видел небольшую статью и пример на
чистом С++, как я могу прочитать длину файла и его сигнатуру.
Это требуется для проверки программы на наличие вирусов.

В статье был пример, буквально в 4 строки, как провести эталонирование,
т.е. найти в БИНАРНОМ ФАЙЛЕ соответствующий участок кода.

Как это сделать при помощи АПИ и других средств (Wx и т.п.) я знаю,
а вот, как это реализуется на ЧИСТОМ С++, увы нет.

Кто знаком с этим, пожалуйста, набросайте этот небольшой пример.
ЗАРАНЕЕ ОГРОМНОЕ СПАСИБО!

P.S.
Именно НА ЧИСТОМ и для бинарного. Я хотел бы встроить эту защиту
в свою программу, не факт что надежно, но плюсы есть. ОГРОМНОЕ СПАСИБО!
240
12 декабря 2006 года
aks
2.5K / / 14.07.2006
Под API я так понимаю имеется ввиду WinAPI?
Так в чем принципиальная разница? Даже в чистом С есть аналогичные функции. Вместо CreateFile и ReadFile - fopen и fread и т.д.
21K
12 декабря 2006 года
megasasha
5 / / 12.12.2006
Цитата: aks
Под API я так понимаю имеется ввиду WinAPI?
Так в чем принципиальная разница? Даже в чистом С есть аналогичные функции. Вместо CreateFile и ReadFile - fopen и fread и т.д.



Да. Разумеется. Вот мне эти функции и нужны. Чтото вроде
такого: if(fgets(str, 2048, f)); мне, сами понимаете не подходит.

Ловить строки if(strstr(str,string) != NULL) в бинарном файле не подойдет.

240
12 декабря 2006 года
aks
2.5K / / 14.07.2006
ну так исспользуй fread
21K
12 декабря 2006 года
megasasha
5 / / 12.12.2006
Парился часа 2. Не могу понять.
Ищу в файле test.exe ХЕКС массив. Не работает.

Кто нибуть, приведите пример? Как найти любую
сигнатуру в двоичном файле! ЗАРАНЕЕ ОГРОМНОЕ СПАСИБО.

С использованием Wx и REDstr нормально всё. А как с помощью:

numread = fread((char *)list, sizeof(long), 2880, stream);
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог