[LEV&n] писал(а):(1)*
Для создания списков есть тег [list]. Не нужно придумывать свои экзотические списки.
Как правильнее и практичнее использовать базу данных?
Без уточнений ответить на этот вопрос нельзя.
(Лично моя идея относительно этого заключается в том, что при создании базы для каждого отдельного вируса я использую файл, допустим *.db с описанием имён файлов и их контентом для проверки, которые естественно находятся рядом с файлом-базой в формате *.df в эти файлы я включил реальные саурсы этих вирусов, всего лишь переименованных в расширение *.df
Что такое "реальные саурсы" мне неизвестно. Но уже сама идея хранить инфецированные exe-файлы с расширением df — гадость.
Суть антивируса при этом - считать в текстовое поле файл
Считывать файл вируса в текстовое поле — неимоверная гадость. Даже считывание вирус-файла в переменную As String — уже гадость. А в визуальный контрол, предназначенный для редактирования текста, — десятикратная гадость.
Идея обновления с сервера, как практичнее реализовать эту идею?
Удостовериться, что актуальность локальных данных не меньше, чем данных на сервере. Если это не так — произвести обновление.
(Моя заключается в том, что при перезаливке баз на сервак я буду обновлять картинку по адресу, допустим
http://antivirus.com/ctrlimg/update.png Если при сравнении старой и новой картинки программа не обнаружила сходства между ними по байтам или в сравнении image с image-ом
Зачем это картинку? Из соображений избыточности и абсурдности? Если да, то рекомендуется заливать не картинку, а wav-файл с аудиозаписью нежного женского голоса, произносящего под тихую музыку список элементов антивирусной базы.
с сервака будет закачиваться файл current_bases.txt содержащий список баз, которые есть на сервере, при этом антивирус сравнит его с файлом last_update.txt и выяснит, какие базы присутствуют, а какие следует качать
Такой способ кажется нормальным (но далеко не классным, не обольщайся). Если ты именно так собираешься делать, то непонятно, зачем было говорить какую-то фигню про картинки.
(Далее мне неизвестна система трансфера, через VB, подскажите пожалуйста)
Казнить, нельзя, помиловать?
Наверное так:
(Далее мне неизвестна система трансфера через VB, подскажите пожалуйста)
К сожалению, такого понятия как "система трансфера через VB" не существует. Также мне не удалось угадать, что подразумевается под этим выдуманным термином. Есть прежположения, конечно, но наличие фразы "через VB" их опровергает.
Изменения типа ListBox, когда я ставлю Style=CheckBox, то не могу понять, как автоматически чекать пункты этого листа, это очень прискорбно, т.к. мне это необходимо, допустим для выбора сканируемых директорий, получаемых с Drive.
Уже ответили, кажется.
Но то, что ты список директорий получаешь с контрола Drive — гадко и позорно. Где же твои принципы "писать самому, а не использовать готовые контролы"?
Консоль под ms-dos программа будет включать в себя модуль, работающий под ms-dos, который будет проверять наличие вирусов до запуска ОС. Автозапуск прописывается в autoexec.bat, поправьте, если ошибаюсь.
(Я уже не говорю о кривизне предложения и сложности его для восприятия)
Если ты думаешь, что то состояние, в котором находится компьютер до загрузке ОС — это ms-dos, то ты глубоко ошибаешься. Это действительно так для некоторых старинных версий ОС Windows.
Ошибаешься, автозапуск прописывает не в autoexec.bat. У меня этого файла вообще нет, к примеру. Автозапуск до загрузки ОС нигде не прописывается, потому что, фактически, негде и прописать.
в цикле загрузки я использовал такие операторы, как:
- Код: Выделить всё
Do while not
Loop
Из них оператором является только Not.
помогите пожалуйста с уменьшением длительности загрузки.
Это не к нам, это к интернет-провайдеру.
Что я мог упустить при постановке такой задачи?
Ты упустил из виду тот факт, что твоё понимание об устройстве компьютера, ОС, а также о рациональности некоторых действий по большей части неправильное.
В целом, твоя попытка создать оборону от вирусов напоминает мне попытки аборигена защититься от авиации. Абориген, пусть даже он мастерски стреляет из лука, вряд ли защитит себя даже от кукурузника. И уж тем более, не только совершенно необразованный абориген, но и военные, в чьём распоряжении есть радар, будут беспомощны против стелс-технологии.
Методы, которыми ты собираешься противостоять вирусам, судя по заданным вопросам, будут такими же примитивными и наивными.
Вирусы бывают разные. Есть те, что сделаны новичками в области вирус-мейкинга. Есть те, что сделаны мастерами своего дела, асами. Рассмотрим не супер-сложный вирус, а какой-нибудь примитивный. Даже для примитивного вируса нет ничего сложно в том, чтобы скрыть от твоих глаз собственный файл, или даже папку, в которой он лежит. Т.е. ты ни через Проводник, ни через какой-либо другой файл-менеджер не сможешь обнаружить файл с вирусом (всё будет выглядеть так, словно файла нет). Разумеется, что и твоя программа, получающая список директорий через Drive (и не через Drive), так же ничего не будет знать о директории, которая скрыта вирусами.
Всё, твоя программа бессильна? Или ты способен обхитрить в этом плане вирус?
Примитивный вирус также может легко восприпятствовать своему удалению (если ты всё-таки найдёшь его). Он может завершить твой антивирус, как только последний попытается что-то предпринять против него (вируса). Он может, в конце концов, инфицировать твою программу-антивирус, и уже твой антивирус будет сам размножать вирусы.
Даже если предположить, что ты найдёшь способы противостоять всему этому, то будь уверен, что техники вирусописания постоянно эволюционируют. Чтобы бороться с более-менее серьёзными вирусами, тебе предстоит понять некоторые вещи.
Эти вещи в сотни или тысячи раз сложны, чем выделение пункта в ListBox'е. Если ты за 5 лет (да даже за год) не смог разобраться с ListBox-ом, то, как ты думаешь, сколько времени тебе потребуется, чтобы овладеть необходимыми знаниями.
Допустим даже, что ты сможешь овладеть тем, о чём я сейчас говорю, за сравнительно короткие сроки. Но ты не забывай, что вирусописателей много, и они уже сейчас опережают тебя на много шагов вперёд. Считаешь, что способен догнать и перегнать их?