AVZ 5. Руководство пользователя
×
Меню
Индекс

16.14.4. function QuarantineFile

function QuarantineFile(AFileName, AMsg : string): boolean;
 
Копирование указанного файла с именем AFileName в карантин. При помещение в карантин в описание файла вносится текст из параметра AMsg. Если файл уже есть в карантине или он опознан по базе безопасных, то копирование в карантин блокируется.
Если файл найден и успешно скопирован в карантин, то функция возвращает true.
Если файл не найден или помещение в карантин блокировано по причине наличия файла в базе безопасных, то возвращается False.
На работу функции влияют маски фильтрации, задаваемые при помощи AddQuarantineFilter
 
В имени файла допустимы макросы, в частности:
%WinDir% - полный путь в папке Windows
%System32% - полный путь к папке System (в Win9x) или System32 (в NT/W2K/XP ...)
 
На заметку:
Если функции QuarantineFile не указано полное имя файла, то делается попытка поиска файла, в ходе которого кроме штатного поиска перебираются типовые варианты местоположения файла, в частности проверяются варианты "имя файла + пути к системным папкам". Это делается для того, чтобы повысить вероятность карантина нужных файлов для исследования
 
Пример:
 
begin
  QuarantineFile('%System32%\vbsys2.dll',  
                'Подозрительное имя, возможно Trojan.Agent');
  QuarantineFile('%WinDir%\vbsys2.dll',  
                'Подозрительное имя, возможно Trojan.Agent');
end.
 
 
В имени файла допускаются маски, содержащие "*" и "?", например:
begin
  QuarantineFile('%System32%\vbsys*.dll',  
              'Подозрительное имя, возможно Trojan.Agent');
end.
 
При указании маски производится поиск подходящих файлов, и все найденные файлы добавляются в карантин.
В случае необходимости папка  Quarantine может быть перемещена в любой каталог с помощью ключа командной строки QuarantineBaseFolder. В этом случае настройка папки карантина должна производиться до операций с карантином.
 
Пример:
 
begin
  // Настройка местоположения папки карантина
  SetupAVZ('QuarantineBaseFolder=c:\avz4\');
  // Карантин файла
  QuarantineFile('%System32%\vbsys2.dll',  
              'Подозрительное имя, возможно Trojan.Agent');
 
end.