PVir •^TVir;

TVir = object (TApplication)

HelpFile: String; (Пия Help-файла}

Procedure InitStatusLine; Virtual;

Procedure Run; Virtual;

Procedure DoHelp;

end;

var

F: File of CheckType; (Архивный файл} Head: THead; {Его заголовок} FColl: PCollection; (Архив в памяти}

BegDat: Longint; (Начало файловой области я архиве) сопзЪ

Stop : Boolean = True; (Признак отказа от контроля) IsVirus: Boolean = False; (Признак обнаруженного вируса) Files : Word •= 0; {Счетчик файлов} AntiV : PVir °- mii; (Указатель на диалог) FChange: Boolean = Fal&e; {Признак изменения коллекции)

{

+----—————————-——————-——————————+

¦ Типы, процедуры и функции, реализующие I I контроль загрузочных секторов и файлов 1 1 на возможное заражение вирусами 1 ] и лечение пораженных файлов (секторов) I

+———————————————————,—————————+

} Procedure Msg(S: String);

(Контролирует текущий видеорежш и susemv сообщение S с помощью Turbo Vision или оператором ftritstiii) var

R: TRect;

С: Char;

AOpt: Word;

begin

if AntiV=MXb then

begin (Обычный режим вывода) WriteLn(S) ;

Write(IНажмите любую клавишу...');

С :° ReadKey;

While KeyPressed do

С :° ReadKey end else

begin (Вывод в Turbo Vision) AOpt := mfOKButton;

AOpt :•= MessageBox(S, KIL,AOpt) end end; (Msg) {...- ————————— ;

Procedure WriteFile(Source: CheckType);

(Записывает в файл F очередную запись и контролирует ошибку) var

k: Integer;

begin

{$1-1

Write(F,Source);

($!+)

if IQResultoO then begin