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

ЖАНРЫ

Windows Script Host для Windows 2000/XP

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

Шрифт:

}

function RemoteScript_Start { //Событие Start

 WScript.Echo("Удаленный сценарий запущен");

}

/************* Конец *********************************************/

Объект WshRemoteError

Объект

WshRemoteError
создается автоматически при возникновении ошибки во время выполнения сценария на удаленной машине и содержит информацию об этой ошибке. Ссылка на объект
WshRemoteError
хранится в свойстве
Error
соответствующего объекта
WshRemote
.

Свойства

объекта
WshRemoteError
описаны в табл. 1.21 (методов у этого объекта нет).

Таблица 1.21. Свойства объекта

WshRemoteError

Свойство Описание
Description
Содержит краткое описание ошибки, которая привела к аварийному завершению работы сценария. Если для какой-либо ошибки описание не предусмотрено,
Description
содержит пустую строку
Line
Определяет номер строки в файле сценария, в которой произошла ошибка. Если для ошибки нельзя определить номер строки, в которой она произошла, в свойство
Line
записывается 0
Character
Определяет номер символа в строке, в котором произошла ошибка. Если для ошибки нельзя определить точную позицию, в которой она возникла, в свойство
Character
записывается 0
Number
Содержит числовой код ошибки
SourceText
Содержит в текстовом виде строку сценария, в которой возникла ошибка. Так как не всегда возможно точно определить строку, в которой произошла ошибка, то иногда значением свойства
SourceText
может быть пустая строка
Source
Содержит в символьном виде название СОМ-объекта, обращение к которому послужило источником ошибок

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

Error
объекта
WshRemote
; соответствующие примеры приведены в листингах 1.28, 2.56 и 2.57. 

Глава 2

Примеры использования стандартных объектов WSH (JScript и VBScript)

В этой главе мы на примерах подробно рассмотрим, как с помощью стандартных объектов WSH 5.6, описание которых приведено в главе 1, можно решать некоторые практические задачи, связанные, в частности, с выводом и вводом текстовой информации, запуском других приложений (как на локальной, так и на удаленной машине), созданием ярлыков в различных папках, работой с системным реестром и локальной сетью. Практически все сценарии приведены как на языке JScript, так и на VBScript, и снабжены подробными комментариями.

Вывод на экран текстовых строк

Сформированные в сценарии строки текста можно выводить в стандартный выходной поток (в консольном режиме) или в графическое диалоговое окно несколькими способами:

с помощью метода

Echo
объекта
WScript
;

с помощью методов

Write
и
WriteLine
объекта
WScript.StdOut
;

с помощью функции

MsgBox
языка VBScript;

с помощью метода

Popup
объекта
WshShell
.

Метод Echo объекта WScript

Примеры использования метода

WScript.Echo
в сценариях,
написанных на языках JScript и VBScript, представлены соответственно в листингах 2.1 и 2.2.

Замечание 

Для корректного отображения с помощью метода Echo символов кириллицы, эти символы должны быть представлены в Windows-кодировке (CP 1251).

Листинг 2.1. Вывод строк в Win-кодировке с помощью метода
WScript.Echo
(JScript)

/*******************************************************************/

/* Имя: Echo1.js */

/* Язык: JScript */

/* Описание: Пример использования метода WScript.Echo */

/*******************************************************************/

//Печатаем строку текста (кириллица)

WScript.Echo("Использование метода Echo (Win-кодировка)");

//Печатаем строку текста и результат вычислений

WScript.Echo("Например, 1+2=",1+2);

/************* Конец *********************************************/

Листинг 2.2. Вывод строк в Win-кодировке с помощью метода WScript.Echo (VBScript)

'*******************************************************************

' Имя: Echo1.vbs

' Язык: VBScript

' Описание: Пример использования метода WScript.Echo

'*******************************************************************

' Печатаем строку текста (кириллица)

WScript.Echo "Использование метода Echo (Win-кодировка)"

' Печатаем строку текста и результат вычислений

WScript.Echo "Например, 1+2=",1+2

'************* Конец *********************************************

Если сценарий Echo1.js (Echo1.vbs) был запущен с помощью cscript.exe, то строки выводятся в командное окно (рис. 2.1).

Если же этот сценарий выполнялся с помощью wscript.exe, то строки по очереди выводятся в диалоговые окна с единственной кнопкой OK (рис. 2.2).

Часто бывает необходимо выводить в диалоговое окно не по одной строке текста, а сразу несколько таких строк (рис. 2.3). Для этого нужно формировать строки, содержащие символы перевода строки: escape-последовательность "

\n
" для JScript и предопределенная именованная константа
vbCrLf
для VBScript (соответствующие примеры сценариев приведены в листингах 2.3 и 2.4).

Рис. 2.1. Результат выполнения Echo1.js с помощью cscript.exe

Рис. 2.2. Результат выполнения Echo1.js с помощью wscript.exe

Рис. 2.3. Диалоговое окно с несколькими строками текста

Листинг 2.3. Вывод в диалоговое окно нескольких строк (JScript)

/*******************************************************************/

/* Имя: Echo2.js */

/* Язык: JScript */

/* Описание: Вывод сразу нескольких строк (WScript.Echo) */

/*******************************************************************/

var s; //Объявляем переменную

Поделиться с друзьями: