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

16.16.2. function  CreateQurantineArchive

function  CreateQurantineArchive(AFileName : string; AQrInfoFiles : string = '') : boolean;
 
Функция создает архив с файлами, помещенными в папку карантина. Из имеющихся в папке Quarantine подкаталога выбирается тот, который соответствующего максимальной дате. Если карантин был очищен перед помещением в него файлов, то соответственно в нем будет единственный подкаталог, который и попадет в архив.
Архив имеет ZIP формат, пароль по умолчанию - virus. Если указанная в параметре AFileName папка не существует, то перед сохранением архива делается попытка создать ее. Начиная с версии 4.45 пароль архива может быть изменен при помощи параметра QrPWD, задаваемого через командную строку или функцию скрипта SetupAVZ
 
Необязательный параметр AQrInfoFiles поддерживается начиная с версии 4.41, и содержит список произвольных файлов, которые добавляются в папку INFO карантина. Разделителем списка файлов является ";". Может применяться для того, чтобы сохранить в карантине некие пояснения, протоколы исследования, сведения о ПК и т.п.
 
Пример:
 
begin
 // Очистка карантина
 ClearQuarantine;
 // Автокарантин
 ExecuteAutoQuarantine;
 // Создание архива с файлами, помещенными в карантин
 CreateQurantineArchive(GetAVZDirectory+'quarantine.zip');
end.
В примере использовались: ClearQuarantine, ExecuteAutoQuarantine, GetAVZDirectory
 
 
Пример для версии 4.41:
 
begin
  // Очистка карантина
  ClearQuarantine;
  // Автокарантин
  ExecuteAutoQuarantine;
  // Выполнить исследование системы
  ExecuteSysCheckEx(GetAVZDirectory + 'syscheck.htm', $FFFFFFFF, true, 1+4+32+64);
  // Создание архива с файлами, помещенными в карантин
  CreateQurantineArchive(GetAVZDirectory+'quarantine.zip',
                         GetAVZDirectory + 'syscheck.htm;'+
                         GetAVZDirectory + 'syscheck.xml');
  // Удаление ненужных файлов
  DeleteFile(GetAVZDirectory + 'syscheck.htm');
  DeleteFile(GetAVZDirectory + 'syscheck.xml');
end.
 В примере использовались: ClearQuarantine, DeleteFile, ExecuteAutoQuarantine, ExecuteSysCheckEx, GetAVZDirectory
 
В данном примере выполняется очистка карантина при помощи ClearQuarantine, затем выполняется карантин (ExecuteAutoQuarantine) и формирование протокола с результатами исследования системы (ExecuteSysCheckEx). Затем при формировании архива с карантином в него добавляются HTML и XML протоколы. После формирования архива протоколы удаляются при помощи функции DeleteFile