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' Программный идентификатор объекта без номера версии
Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

Вы можете отметить интересные вам фрагменты текста, которые будут доступны по уникальной ссылке в адресной строке браузера.

Отметить Добавить цитату