$13 в программе используется мультиплексное прерывание $2F, которое для подфункции $13 возвращает в регистрах DS:DX требуемый адрес. Поскольку при этом прежнее содержимое регистров DS:DX автоматически помещается в вектор $13, это прерывание необходимо вызывать дважды подряд с промежуточным запоминанием регистров DS:DX в стеке (см. процедуру Bv.ild.Arch в программе ANTIVIR). В ходе контроля загрузочных секторов программа переназначает обычно пустующий вектор $62 так, чтобы он указывал на вход в обработчик $13, и использует затем этот вектор для скрытого от вируса чтения секторов жесткого диска. К сожалению этот прием нельзя использовать для контроля архивных файлов, так как в последнее время широкое распространение получили программы динамического сжатия/раскрытия информации (самыми популярными из таких программ являются Double Space и Stacker). Контроль динамически сжатых дисков непосредственным чтением секторов невозможен, так как в этом случае отключается не только возможный вирус, но и резидентная программа—деархиватор. В результате не удается найти начальный сектор защищаемого файла и проверить PSP программы.

6.5. НЕКОТОРЫЕ РЕКОМЕНДАЦИИ

1) Вставляйте имя модуля F_Anti в предложение Uses — «вакцинация» программы при ее рождении гарантирует стойкий иммунитет на весь срок ее эксплуатации.

2) Если Вы часто используете ЕХЕ— файлы, содержащие инструментальные программы (например, пс.ехе, lexicon.exe и т.п.), рекомендую поставить на них фаг Fag.prg. Кстати, если Вы устанавливаете фаг на программу, защищенную средствами модуля F_Anti, встроенный в нее контроль обнаружит инородное тело фага.

3) Все СОМ—файлы операционной программы и слишком громоздкие ЕХЕ— файлы следует защитить программой Antivir. Вызов этой программы в автоматическом режиме (с ключом /AUTO) полезно включить в файл AUTOEXEC.BAT.

4) Старайтесь как можно чаще архивировать на дискетах жизненно важные для Вас (и Вашего компьютера) файлы.