Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.02.2014, 14:13   #21
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
вы сканируете тупо весь файл на сигнатуру?
Только недавно из этого состояния стали вылазить... А чем вам ограничение размера не угодило? Меж прочим, если файл более 2 гб то мой антивирь сам пишет "out of memory" раз сто, после чего комп выдает "синий экран". Короч надо ли проверять файлы более 2гб или нет?
androdrev вне форума Ответить с цитированием
Старый 26.02.2014, 14:21   #22
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Короч надо ли проверять файлы более 2гб или нет?
Все файлы, без исключений по любому признаку.

А out of memory из-за глупого "заргрузить все в memory stream и фигачить", либо память кушается но не перерабатываетсяв свободный ресурс

Используйте буфер.
Человек_Борща вне форума Ответить с цитированием
Старый 26.02.2014, 14:27   #23
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
По умолчанию

Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Все файлы, без исключений по любому признаку.

А out of memory из-за глупого "заргрузить все в memory stream и фигачить", либо память кушается но не перерабатываетсяв свободный ресурс

Используйте буфер.
Это норм будет, буфер использовать, если надо файл размером 10-30 гб просканить? Хз но придется... Надо так надо. Но даже если использовать буфер, как вы говорите, база расширится до хотя бы 500 000 записей, ну до 1 млн, и тогда (+ эвристический анализ) сканирование файла, размером 15-35 гб будет длиться целые века)))
androdrev вне форума Ответить с цитированием
Старый 26.02.2014, 14:30   #24
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от androdrev Посмотреть сообщение
Только недавно из этого состояния стали вылазить... А чем вам ограничение размера не угодило? Меж прочим, если файл более 2 гб то мой антивирь сам пишет "out of memory" раз сто, после чего комп выдает "синий экран". Короч надо ли проверять файлы более 2гб или нет?
Цитата:
Сообщение от Человек_Борща Посмотреть сообщение
Все файлы, без исключений по любому признаку.

А out of memory из-за глупого "заргрузить все в memory stream и фигачить", либо память кушается но не перерабатываетсяв свободный ресурс

Используйте буфер.

проверять надо все, но проверять надо с умом.
глупо искать в jpeg сигнатуры приложений.
там нужно искать свои сигнатуры, и прежде всего проверить а jpeg ли это.
архив же надо обрабатывать как папку по сути, а не сканить насквозь.

далее exe уже да, и есть смысл сканировать весь и нет.
обычно сигнатуры ищут по определенным точкам, типа точки входа или точки main.(это уже зависит от компилятора).
что сильно снижает нагрузку.
далее сканировать ресурсы и тп.

насчет out of memory, это позорно даже как-то.

молчу уж про эвристик.
Цитата:
Это норм будет, буфер использовать, если надо файл размером 10-30 гб просканить?
буфер использовать всегда, никаких тупых загрузок в память.
просто если размер файла меньше размера буфера, то тогда просто он прочтется за раз.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 26.02.2014, 14:40   #25
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
насчет out of memory, это позорно даже как-то.
Ничего позорного. Позорно будет, когда антивирус выйдет в Сеть. Сейчас он еще в стадии разработки, потому у нас там еще не такое творится
androdrev вне форума Ответить с цитированием
Старый 26.02.2014, 14:44   #26
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

Цитата:
Сообщение от androdrev Посмотреть сообщение
Ничего позорного. Позорно будет, когда антивирус выйдет в Сеть. Сейчас он еще в стадии разработки, потому у нас там еще не такое творится
конкретно насчет этого косяка, я остаюсь при своем мнении.
(интересно как зависнет ваш антивир в надежде найти чтонить на файлах виртуального HDD от VM хД)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 26.02.2014, 14:49   #27
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Цитата:
Меж прочим, если файл более 2 гб то мой антивирь сам пишет "out of memory" раз сто, после чего комп выдает "синий экран".
Вы его полностью грузите что ли ?
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 26.02.2014, 14:49   #28
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
По умолчанию

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
проверять надо все, но проверять надо с умом.
глупо искать в jpeg сигнатуры приложений.
там нужно искать свои сигнатуры, и прежде всего проверить а jpeg ли это.
архив же надо обрабатывать как папку по сути, а не сканить насквозь.

далее exe уже да, и есть смысл сканировать весь и нет.
обычно сигнатуры ищут по определенным точкам, типа точки входа или точки main.(это уже зависит от компилятора).
что сильно снижает нагрузку.
далее сканировать ресурсы и тп.

насчет out of memory, это позорно даже как-то.

молчу уж про эвристик.буфер использовать всегда, никаких тупых загрузок в память.
просто если размер файла меньше размера буфера, то тогда просто он прочтется за раз.
Про эвристику молчать не надо. Уже делаем.

Для архивов пока отдельный сканер-распаковщик, они не сканируются общим.

Да наша команда сделала Base Constructor - буду разбираться с "точками входа", позициями, смещениями и т.д., это делали профессионалы, а я плохо в этих точках понимаю

Цитата:
Сообщение от Пепел Феникса Посмотреть сообщение
конкретно насчет этого косяка, я остаюсь при своем мнении.
(интересно как зависнет ваш антивир в надежде найти чтонить на файлах виртуального HDD от VM хД)
Это мы посмотрим. Раз вам интересно - посмотрите как выйдет антивирь

Цитата:
Сообщение от Utkin Посмотреть сообщение
Вы его полностью грузите что ли ?
Щас да скоро нет

Последний раз редактировалось Stilet; 26.02.2014 в 18:11.
androdrev вне форума Ответить с цитированием
Старый 26.02.2014, 15:43   #29
androdrev
Форумчанин
 
Аватар для androdrev
 
Регистрация: 19.03.2013
Сообщений: 135
По умолчанию

Всё, всем большое спасибо, ошибка out of memory устранена (буфером), скачивание производится по-человечески (уже скачанное не перекачивается заново).

Последний раз редактировалось androdrev; 26.02.2014 в 18:31.
androdrev вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
конструирование баз данных Кирби Помощь студентам 10 17.07.2013 19:15
Объединить баз данных Predator199 PHP 1 05.03.2012 09:30
баз данных в Access Екатерина_L Фриланс 5 02.06.2011 17:22
защита баз данных ELL БД в Delphi 5 04.05.2010 11:45
Синхронизация баз данных Ramires БД в Delphi 6 15.08.2008 03:34