задании сценарии, написанные на разных языках, что иногда бывает очень удобно. Предположим, что у вас имеются сценарии на JScript и VBScript, функции которых необходимо объединить. Для этого не нужно переписывать один из сценариев на другой язык — используя WS-файл, можно из сценария JScript спокойно вызывать функции, написанные на VBScript, и наоборот! Пример подобного сценария приведен в листинге 3.12.

Атрибут src позволяет подключить к выполняющемуся сценарию внешний файл с другим сценарием. Например, задание элемента

<script language='JScript' src='tools.js'/>

приведет к такому же результату, как если бы содержимое файла tools.js было расположено между тегами <script> и </script>:

<script language='JScript'>

 Содержимое файла tools.js

</script>

Таким образом, можно выделить код, который должен использоваться в нескольких сценариях, поместить его в один или несколько внешних файлов, а затем по мере необходимости просто подключать с помощью атрибута src эти файлы к другим сценариям.

Замечание

Элемент <script> является вторым обязательным элементом в сценариях WSH с разметкой XML.

Примеры сценариев с разметкой XML

Приведем примеры сценариев, иллюстрирующие основные свойства WS-файлов.

Строгий режим обработки WS-файла

Напомним, что здесь обязательными являются элементы <?xml?> и <! [CDATA[]]>. Соответствующий пример сценария strict.wsf приведен в листинге 3.8.

Листинг 3.8. Файл strict.wsf

<?xml version='1.0' standalone='yes' encoding='windows-1251'?>

<job id='JS'>

 <runtime>

  <description>

  Имя: strict.wsf

  Кодировка: Windows

  Описание: Пример строгого режима обработки WS-файла

  </description>

 </runtime>

 <script language='JScript'>

  <![CDATA[

   WScript.Echo('Всем привет!');

  ]]>

 </script>

</job>

Несколько заданий в одном файле 

Каждое отдельное задание в WS-файле должно находиться внутри элементов <job> и </job>. В свою очередь, все элементы <job> являются дочерними элементами контейнера <package>.

В качестве примера рассмотрим сценарий multijob.wsf, приведенный в листинге 3.9. Здесь описываются два задания с идентификаторами 'VBS' (сценарий на языке VBScript) и 'JS' (сценарий на языке JScript).

Листинг 3.9. Файл multijob.wsf

<package>

 <job id='VBS'>

  <!-- Описываем первое задание (id='VBS') -->

  <runtime>

   <description>

   Имя: multijob.wsf

   Кодировка: Windows

   Описание: Первое задание из example.wsf

   </description>

  </runtime>

  <script language='VBScript'>

   WScript.Echo 'Первое задание (VBScript)'

  </script>

 </job>

 <job id='JS'>

  <!-- Описываем второе задание (id='JS') -->

  <runtime>

   <description>

   Имя: example.wsf

   Кодировка: Windows

   Описание: Второе задание из example.wsf

   </description>

  </runtime>

  <script language='JScript'>

   WScript.Echo('Второе задание (JScript)');

  </script>

 </job>

</package>

Для того чтобы выполнить первое задание сценария multijob.wsf, которое выведет на экран строку 'Первое задание (VBScript)', нужно выполнить одну из следующих команд:

cscript //job:'VBS' multijob.wsf

cscript multijob.wsf

wscript //job:'VBS' multijob.wsf

wscript multijob.wsf

Добавить отзыв
ВСЕ ОТЗЫВЫ О КНИГЕ В ИЗБРАННОЕ

0

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

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