Чтение онлайн

на главную - закладки

Жанры

Windows Script Host для Windows 2000/XP

Попов Андрей Викторович

Шрифт:

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

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

Для запуска второго задания, выводящего на экран строку "

Второе задание (JScript)
", нужно явно указывать идентификатор этого задания, поэтому используется одна из двух команд:

cscript //job:"JS" multijob.wsf

wscript //job:"JS" multijob.wsf
 

Использование констант внешних объектов

Для того чтобы в сценарии обращаться по имени к константам, определенным во внешних объектах, не создавая экземпляров самих объектов, необходимо сначала получить ссылку на эти объекты с помощью элемента

<reference>
.

В листинге 3.10 приведен сценарий refer.wsf, в котором с помощью элемента

<reference>
производится доступ к трем константам объекта
FileSystemObject
(
ForReading
,
ForWriting
и
ForAppending
), которые определяют режим работы из сценария с внешним текстовым файлом.

Листинг 3.10. Использование в сценарии констант внешних объектов (файл refer.wsf)

<job id="Example">

 <runtime>

<description>

Имя: refer.wsf

Кодировка: Windows

Описание: Использование констант внешних объектов

</description>

 </runtime>

 <!-- Получаем ссылку на объект FileSystemObject -->

Поделиться:
Популярные книги

Черный Маг Императора 5

Герда Александр
5. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Черный Маг Императора 5

Камень. Книга 3

Минин Станислав
3. Камень
Фантастика:
фэнтези
боевая фантастика
8.58
рейтинг книги
Камень. Книга 3

Газлайтер. Том 12

Володин Григорий Григорьевич
12. История Телепата
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Газлайтер. Том 12

Адвокат империи

Карелин Сергей Витальевич
1. Адвокат империи
Фантастика:
городское фэнтези
попаданцы
фэнтези
5.75
рейтинг книги
Адвокат империи

Двойник короля 19

Скабер Артемий
19. Двойник Короля
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Двойник короля 19

Бандит 2

Щепетнов Евгений Владимирович
2. Петр Синельников
Фантастика:
боевая фантастика
5.73
рейтинг книги
Бандит 2

Новик

Ланцов Михаил Алексеевич
2. Помещик
Фантастика:
альтернативная история
6.67
рейтинг книги
Новик

Сирота

Ланцов Михаил Алексеевич
1. Помещик
Фантастика:
альтернативная история
5.71
рейтинг книги
Сирота

Наследие Маозари 6

Панежин Евгений
6. Наследие Маозари
Фантастика:
попаданцы
постапокалипсис
рпг
фэнтези
эпическая фантастика
5.00
рейтинг книги
Наследие Маозари 6

Дважды одаренный. Том V

Тарс Элиан
5. Дважды одаренный
Фантастика:
аниме
альтернативная история
городское фэнтези
5.00
рейтинг книги
Дважды одаренный. Том V

Второгодка. Книга 4. Подавать холодным

Ромов Дмитрий
4. Второгодка
Фантастика:
героическая фантастика
альтернативная история
сказочная фантастика
5.00
рейтинг книги
Второгодка. Книга 4. Подавать холодным

Тыл-фронт

Головин Андрей
Проза:
военная проза
проза прочее
5.00
рейтинг книги
Тыл-фронт

Геном хищника. Книга четвертая

Гарцевич Евгений Александрович
4. Я - Легенда!
Фантастика:
боевая фантастика
рпг
попаданцы
5.00
рейтинг книги
Геном хищника. Книга четвертая

Убивать чтобы жить 5

Бор Жорж
5. УЧЖ
Фантастика:
боевая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Убивать чтобы жить 5