Книга: Windows Script Host для Windows 2000/XP

Пример: СОМ-объект для архивирования файлов

закрыть рекламу

Представим себе следующую ситуацию. Имеется несколько каталогов на жестком диске, в которых хранятся рабочие файлы разных пользователей. Необходимо каждый день с помощью программы-архиватора arj.exe делать архивы этих файлов в заданный каталог, при этом имя архивного файла должно соответствовать шаблону ппММДД.arj", где пп — уникальный для каждого пользователя префикс, ММ — текущий месяц, ДД — текущий день.

Мы создадим компонент-сценарий DateArc.WSC, с помощью свойств и методов которого можно будет выполнить поставленную задачу.

Начнем мы с того, что определимся, какие именно свойства и методы будет содержать создаваемый объект (табл. 10.1).

Таблица 10.1. Свойства и методы объекта DateArc.WSC

Название Свойство/метод Режим доступа Описание
SFrom Свойство Чтение/запись Исходный каталог для архивирования
SArch Свойство Чтение/запись Каталог, в котором хранятся архивные файлы
SPref Свойство Чтение/запись Префикс файла-архива
SMask Свойство Чтение/запись Маска, по которой отбираются файлы для архивирования
SErrMess Свойство Чтение Текст сообщения об ошибке
FilesToArchiv() Метод   Метод, осуществляющий архивирование файлов

Имея зарегистрированный в системе СОМ-объект с такими свойствами и методами, несложно написать сценарий (назовем его RunArj.js), в котором создавался бы экземпляр объекта DateArc.WSC и производилось с помощью метода FilesToArchiv() архивирование файлов из исходного в целевой каталог (листинг 10.2).

Листинг 10.2. Архивирование файлов с помощью СОМ-объекта DateArc.WSC

/********************************************************************/
/* Имя: RunArj.js                                                   */
/* Язык: JScript                                                    */
/* Описание: Архивирование файлов с помощью COM-объекта DateArc.WSC */
/********************************************************************/
//Объявляем переменные
var
 DateArc,  //Экземпляр объекта DateArc.WSC
 Result;   //Результат выполнения метода FilesToArchiv()
//Инициализируем константы для диалоговых окон
var vbCritical=16,vbInformation=64;
//Создаем объект WshShell
WshShell = WScript.CreateObject("WScript.Shell");
//Создаем объект DateArc.WSC
DateArc=WScript.CreateObject("DateArc.WSC");
DateArc.SFrom="D:1";  //Исходный каталог
DateArc.SArch="D:2";  //Каталог, в который будут архивироваться
                        //файлы
DateArc.SPref="aa";  //Префикс для файл-архива
DateArc.SMask="*.*"; //Маска, по которой будут отбираться файлы
                     //для архивирования
//Запускаем метод FilesToArchiv()
Result=DateArc.FilesToArchiv();
if (!Result)
 //Если возникла ошибка, выводим соответствующее сообщение
 WshShell.Popup(DateArc.SErrMess, 0, "Архивирование файлов", vbCritical);
else  WshShell.Popup("Архивирование завершено успешно!", 0,
 "Архивирование файлов", vbInformation);
/*************  Конец *********************************************/
 

Оглавление книги


Генерация: 0.934. Запросов К БД/Cache: 4 / 1
поделиться
Вверх Вниз