Використання зовнішніх архіваторів
Починаючи з версії 1.5, в програмі можливо використовувати зовнішні архіватори. Кожне завдання може бути налаштований на користування своєю конфігурацією або на використання внутрішнього Zip архіватора.
Розглянемо файл конфігурації на прикладі WinRar:
// ApBackUp Файл розширення для зовнішнього архіватора WinRar
// розширення для створюваного архіву
Ext- розширення для файлу архіву саме з таким розширенням буде створюватися архів і знищуватися файли вийшли за термінами з глибини архіву.
// командний рядок для запуску архіватора
Command - команда запуску зовнішнього архіватора. При першому використанні конфігурації обов'язково поставте тут правильний шлях на вашій машині.
// Рядок параметрів всі вирази в [] будуть замінені на конкретні вирази
ParamStr = "[ArhCommand] [RecurseSw] [CompressLevel] [TmpDirSW] [AddWithArchiveAttr] [ClearArchiveAttr] [Priority] -ds -ed -y -idp [ExcludeSw]" [ArchiveName] "[IncludeSW]"
ParamStr - Цей рядок буде додаватися як параметр в командному рядку всі підрядка з [] будуть замінюватися відповідними ключами зазначеними нижче, також тут ви можете писати інші ключі які вам потрібні але не встановлюються в програмі.
Зверніть увагу на "[ArchiveName]" ім'я архіву укладено в подвійні лапки, так як це може бути і довгий шлях. Можете не вказувати окремі параметри, тоді дані опції завдання не діятимуть
ReplaceCommand- команда Replace для вашого архіватора
FreshCommand- команда ReFresh для вашого архіватора
UpdateCommand- команда Update для вашого архіватора
RecurseSw - перемикач який буде включено в рядок параметрів якщо вказана опція включати субдіректоріі
NoRecurseSw - перемикач який буде включено в рядок параметрів якщо не вказана опція включати субдіректоріі. У деяких архіваторах це потрібно, в деяких немає, якщо в архіваторі цього не потрібно просто нічого не ставте або взагалі приберіть цей параметр.
// виключаються файли замість [ExcludeFilesList] буде
// підставлено ім'я файлу зі списком виключаються файлів
ExcludeSw - перемикач для виключення файлів.
Тут на місце [ExcludeFilesList] буде підставлена ім'я файлу зі списком виключаються файлів для завдання, який буде створений під час архівації. Знову зверніть увагу на подвійні лапки для довгих шляхів
// Включаються файли замість [IncludeFilesList] буде
// підставлено ім'я файлу зі списком включення файл
IncludeSW - перемикач для включення файлів в архів
Тут на місце [IncludeFilesList] буде підставлена ім'я файлу зі списком включення файл, для завдання який буде створений під час архівації. Знову зверніть увагу на подвійні лапки для довгих шляхів.
Тут ви задаєте перемикачі для рівня компресії відповідно. Тобто буде обраний перемикач, що відповідає рівню компресії встановленому в налаштуванні завдання
// Робоча ДИРЕТОР замість [TmpDir] буде подсавлена тимчасова завданню директора в програмі
SetTmpDir - Перемикач для вказівки тимчасової директорії. На місце [TmpDir] буде поставлена тимчасова директорія, налаштована в опціях програми.
// Переключтель архівувати тільки файли з встановленим атрибутом "Архівний"
AddWithArchiveAttr - перемикач який буде вставлений в командний рядок якщо в настройках завдання зазначено "використовувати атрибут архівний"
// Перемикач очішают атрибут архівний після архівації
ClearArchiveAttr - перемикач який буде вставлений в командний рядок якщо в настройках завдання зазначено "очистити атрибут архівний"
// Пріоритет процесу при запуску зовнішнього додатки
Тут ви можете вказати перемикачі, які вказують пріоритет потоку архиватора актуально тільки для WinRar.
Загальна схема дії програми така:
При архівації програма шукає вказаний файл * .EMC зчитує параметри для кожного параметра виглядає якщо дана опція вибрана в завданні, то в командний рядок на відповідне місце ставиться ключ якщо опція не вибрана, то вставляється порожній рядок. Потім запускається процес з вказаною командою запуску і рядком параметра. Причому, якщо основне вікно програми видно на екрані, то і зовнішній архіватор запуститься видимим. Якщо програма висить в треї, то і зовнішній архіватор запуститься невидимим вікном.
Приклад: Ви вибрали "Включати субдіректоріі". Програма візьме перемикач, вказаний в параметрі RecurseSw (в нашому прикладі -r) і підставить його на місце [RecurseSw] в командному ст рок.