Категории
Самые читаемые
onlinekniga.com » Компьютеры и Интернет » Программное обеспечение » Windows Script Host для Windows 2000/XP - Андрей Попов

Windows Script Host для Windows 2000/XP - Андрей Попов

Читать онлайн Windows Script Host для Windows 2000/XP - Андрей Попов

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 125 126 127 128 129 130 131 132 133 ... 175
Перейти на страницу:

 //Выделяем в дате день

В s1+=d.getDate();

 //Если день представляется одним символом, добавляем слева "0"

В if (s1.length==1) s1="0"+s1;

В s+=s1;

 //Возвращаем сформированную строку

В return s;

}

//Проверка доступности каталогов

function CheckPath() {

В var FSO;

 //Создаем объект FileSystemObject

В FSO=new ActiveXObject("Scripting.FileSystemObject");

 //Проверяем доступность исходного каталога

В if (!FSO.FolderExists(SFrom)) { //Рсходный каталог РЅРµ существует

  //Формируем строку с информацией об ошибке

  SErrMess="Не найден исходный каталог "+SFrom;

В  return false;

В }

 //Проверяем доступность каталога для архивирования

В if (!FSO.FolderExists(SArch)) {

  //Каталог для архивирования не существует

  //Формируем строку с информацией об ошибке

  SErrMess="Не найден каталог для хранения архивов "+SArch;

В  return false;

В }

 //Если оба каталога существуют, возвращаем true

В return true;

}

//Архивирование файлов из исходного каталога

function FilesToArchiv()В  {

В var WshShell,SComLine,RetCode,SFName,FSO;

 //Если хотя бы один из каталогов не существует, возвращаем false

В if (!CheckPath()) return false;

 //Создаем объект FileSystemObject

В FSO=new ActiveXObject("Scripting.FileSystemObject");

 //Создаем объект WshShell

В WshShell = new ActiveXObject("WScript.Shell");

 //Формируем имя файла-архива

В SFName=SPref+NowIs()+".arj";

 //Формируем командную строку для запуска архиватора arj.exe

В SComLine="%COMSPEC% /c arj.exe a ";

В SComLine+=FSO.BuildPath(SArch,SFName)+" ";

В SComLine+=FSO.BuildPath(SFrom,SMask);

 //Запускаем архиватор arj.exe

В RetCode = WshShell.Run(SComLine, 1, true);

 //Анализируем код возврата для arj.exe

В if (0==RetCode)

  //Выполнение arj.exe завершилось без ошибок

В  return true;

В else {

  //Формируем строку с информацией об ошибке

  SErrMess="Ошибка ARJ.EXE! Код "+RetCode;

В  return false;

В }

}

В  ]]>

В </script>

</component>

Регистрация файла DateArc.wsc в качестве СОМ-объекта

После написания текста объекта-сценария нужно внести информацию о нем в системный реестр, т.е, зарегистрировать объект. Это можно сделать несколькими способами, самый простой из которых заключается в следующем. Нужно выделить в Проводнике Windows необходимый WSC-файл с компонентом-сценарием (в нашем случае это файл DateArc.wsc в каталоге C:WSC), щелкнуть правой кнопкой мыши и в появившемся контекстном меню выбрать пункт Подключить (Register) (рис. 10.7).

Рис. 10.7. Контекстное меню, сопоставленное расширению WSC

После этого необходимая информация запишется в реестр и выполнится функция Register(), которая описана в файле DateArc.wsc внутри элемента <registration>, в результате чего на экран будет выведено диалоговое окно, показанное на рис. 10.8. 

Р РёСЃ. 10.8. Рнформация Рѕ регистрации компонента-сценария DateArc.WSC

В системном реестре данные о регистрируемом объекте DateArc.WSC заносятся в две ветви: HKEY_LOCAL_MACHINE и HKEY_CLASSES_ROOT.

В разделе HKEY_LOCAL_MACHINESOFTWAREClasses создается новый подраздел DateArc.WSC со значением по умолчанию "DateArc". В подразделе DateArc.WSC в параметр CLSID записывается глобальный код объекта DateArc.WSC — "{424AC2BC-5732-4DEA-BE17-0211AF99CD79}" (рис. 10.9).

Р РёСЃ. 10.9. Рнформация Рѕ зарегистрированном объекте DateArc.WSC РІ ветви HKEY_LOCAL_MACHINE

В разделе HKEY_CLASSES_ROOTCLSID создается новый подраздел, название которого совпадает с глобальным кодом объекта DateArc.WSC — "{424AC2BC-5732-4DEA-BE17-0211AF99CD79}". Значением по умолчанию для нового подраздела является "DateArc" (рис. 10.10).

Р РёСЃ. 10.10. Рнформация Рѕ зарегистрированном объекте DateArc.WSC РІ ветви HKEY_CLASSES_ROOT

В новом разделе создаются, в свою очередь, еще несколько подразделов, значения которых очень важны для функционирования компонента-сценария в качестве СОМ-объекта (см. разд. "Технология Windows Script Components"). Эти разделы для нашего примера описаны в табл. 10.2.

Таблица 10.2. Подразделы, создаваемые в разделе HKCRCLSID {424AC2BC-5732-4DEA-BE17-0211AF99CD79} при регистрации объекта DateArc.WSC

Название Значение по умолчанию Описание InprocServer32 "F:WINDOWSSystem32scrobj.dll" Полный путь к оболочке компонентов-сценариев scrobj.dll ProgID "DateArc.WSC.1.00" Программный идентификатор объекта, включающий номер версии ScriptletURL "file://C:WSCDateArc.wsc" Полный путь к WSC-файлу VersionIndependentProgID "DateArc.WSC" Программный идентификатор объекта без номера версии

Отключается компонент-сценарий так же просто, как и регистрируется. Снова нужно выделить в Проводнике Windows WSC-файл, щелкнуть правой кнопкой мыши и в появившемся контекстном меню выбрать пункт Отключить (Unregister). При этом из системного реестра записи об этом объекте будут удалены, после чего выполнится функция Unregister() (рис. 10.11).

Р РёСЃ. 10.11. Рнформация РѕР± отключении компонента-сценария DateArc.WSCВ 

1 ... 125 126 127 128 129 130 131 132 133 ... 175
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Windows Script Host для Windows 2000/XP - Андрей Попов.
Комментарии