Windows Script Host для Windows 2000/XP | страница 18



. Этот метод служит для вывода на экран информации о запущенном сценарии (описание аргументов командной строки, пример запуска сценария и т.д.). В свою очередь, подобную информацию можно задать только при использовании WSH-сценариев с разметкой XML; более подробно о применении метода >ShowUsage идет речь в главе 3 при рассмотрении элементов >, >, >, > и >.

Объект WshNamed

Объект >WshNamed содержит коллекцию параметров командной строки запущенного сценария, у которых имеется уникальное имя (именные параметры). В WSH 5.6 именной параметр всегда начинается с символа "/", после чего приводится имя этого параметра, затем ставится двоеточие ":" и пишется значение параметра, например:

>/Name:Andrey

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

>/Name:"Andrey Popov"

Создается объект WshNamed с помощью свойства >Named коллекции >WshArguments. Для того чтобы получить значение определенного аргумента, его имя используется в качестве индекса коллекции.

Замечание

Узнать число именных параметров можно только с помощью свойства >Length коллекции >WshNamed; метода >Count у этой коллекции нет.

Например, пусть сценарий MyScript.js запущен с двумя именными параметрами:

>MyScript.js /User:Andrey /Computer:Server1

Тогда вывести на экран значение параметров Name и Computer можно двумя способами:

>var objNamedArgs;

>objNamedArgs=WScript.Arguments.Named;

>WScript.Echo("Имя пользователя: "+objNamedArgs.Item("User"));

>WScript.Echo("Имя компьютера: "+objNamedArgs.Item ("Computer"));

или просто

>var objNamedArgs;

>objNamedArgs=WScript.Arguments.Named;

>WScript.Echo("Имя пользователя: "+objNamedArgs("User"));

>WScript.Echo("Имя компьютера: "+objNamedArgs("Computer"));

Отметим также, что значением именного параметра, как и безымянного, может служить целая строка, состоящая из нескольких литералов и заключенная в кавычки, например:

>MyScript.js /User:"Andrey Popov" /Computer:Server1

Тогда в результате выполнения в сценарии MyScript.js следующей строки:

>WScript.Echo("Имя пользователя: "+ WScript.Arguments.Named("User"));

на экран будет выведено

>Имя пользователя: Andrey Popov

Для того чтобы узнать, был ли указан при запуске сценария тот или иной именной параметр, используется метод