Андрей Попов - Windows Script Host для Windows 2000/XP
- Название:Windows Script Host для Windows 2000/XP
- Автор:
- Жанр:
- Издательство:БХВ-Петербург
- Год:2004
- Город:Санкт-Петербург
- ISBN:5-94157-197-6
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Андрей Попов - Windows Script Host для Windows 2000/XP краткое содержание
В книге описывается сервер сценариев Windows Script Host (WSH) версии 5.6, который является одним из стандартных компонентов Windows ХР, а также может быть установлен в более ранних версиях Windows. Приводятся сценарии на языках VBScript и JScript, иллюстрирующие применение стандартных объектов WSH 5.6, включая создание из сценариев дочерних процессов и запуск сценариев на удаленных компьютерах. В качестве более сложных примеров рассматриваются сценарии, работающие с базами данных, управляющие приложениями Microsoft Office, организующие графический пользовательский интерфейс, использующие технологии ADSI (Active Directory Service Interface) и WMI (Windows Management Instrumentation) для решения задач администрирования. Освещены вопросы практической работы с XML-файлами и создания СОМ-объектов. Особое внимание уделяется вопросам безопасности при работе со сценариями, приводятся конкретные примеры настроек политик безопасности. К книге прилагается дискета с исходными текстами большинства примеров.
Windows Script Host для Windows 2000/XP - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Операторы присваивания
В JScript, как и в языке С, для изменения содержимого переменных можно комбинировать оператор присваивания "=" с другими операторами (табл. П1.6).
Таблица П1.6.Комбинации оператора присваивания и других операторов
Оператор | Описание |
---|---|
= |
Простое присваивание |
+= |
Увеличение численного значения или конкатенация (склеивание) строк |
-= |
Уменьшение численного значения |
*= |
Умножение |
/= |
Деление |
%= |
Вычисление остатка от деления |
>>= |
Сдвиг вправо |
>>>= |
Сдвиг вправо с заполнением освобождаемых разрядов нулями |
<<= |
Сдвиг влево |
|= |
Логическое ИЛИ |
&= |
Логическое И |
^= |
Логическое ИСКЛЮЧАЮЩЕЕ ИЛИ |
Операторы отношения
Операторы отношения используются для сравнения значений нескольких переменных. Эти операторы, описанные в табл. П1.7, могут возвращать только логические значения true
или false
.
Таблица П1.7.Операторы отношения
Оператор | Условие, при котором возвращается true |
---|---|
> |
Левый операнд больше правого |
>= |
Левый операнд больше или равен правому |
< |
Левый операнд меньше правого |
<= |
Левый операнд меньше или равен правому |
== |
Левый операнд равен правому |
!= |
Левый операнд не равен правому |
Также в условных операторах применяются логические операторы (табл. П1.8).
Таблица П1.8.Логические операторы
Оператор | Описание |
---|---|
|| |
Оператор отношения "ИЛИ". Возвращает true , если один из операндов равен true . В противном случае возвращает false |
&& |
Оператор отношения "И". Возвращает true , если оба операнда равны true . В противном случае возвращает false |
Условные операторы
В JScript поддерживается условный оператор if…else
. Общий вид этого оператора показан ниже:
if ( условие ) выражение_1
[else выражение_2 ]
При выполнении оператора if…else
оценивается логическое условие, заданное в круглых скобках после ключевого слова if
. Если в результате оценки условия получилось значение true, то выполняется первое выражение. В противном случае выполняется второе выражение (если оно присутствует).
Оператор if…else
может быть вложенным. Заметим, что если в первом или втором выражении нужно расположить несколько операторов, то их следует выделить фигурными скобками:
if (х == 5) {
if (у == 6) z = 17;
} else z = 20;
В JScript также существует специальный тип условного оператора, который называется оператором " ?:
". В общем виде он записывается так:
условие ? выражение_1 : выражение_2
При вычислении оператора " ?:
" вначале оценивается условие, расположенное в левой части. Если оно равно true
, то выполняется первое выражение, в противном случае — второе. Например:
hours += (theHour >=12) ? " РМ" : " AM";
Операторы циклов
Microsoft JScript поддерживает несколько типов циклов: цикл for
, цикл for…in
, цикл while
, цикл do…while
. Рассмотрим каждый из них подробнее.
Цикл for
В общем случае оператор цикла forимеет три раздела (инициализация, условие и итерация) и записывается следующим образом:
for ([ инициализация ;] [ условие ;] [ итерация ]){
тело цикла
}
В разделе инициализации обычно выполняется присваивание начальных значений переменным цикла. Здесь можно объявлять новые переменные с помощью ключевого слова var
.
Во втором разделе задается условие выхода из цикла. Это условие оценивается каждый раз при прохождении цикла. Если в результате такой оценки получается логическое значение true
, то начинают выполняться строки из тела цикла; в противном случае происходит выход из цикла. В том случае, когда условие было ложным с самого начала (при первой проверке), цикл не будет выполнен ни разу.
Раздел итерации применяется для изменения значений переменных цикла (например, увеличения или уменьшения значения счетчика цикла).
Пример использования цикла for
приведен в листинге П1.1.
for
var howFar = 11; // Верхний предел для счетчика цикла
var sum = new Array(howFar); //Массив из 11 элементов, индексы от 0 до 10
var theSum = 0;
sum[0] = 0;
//Цикл выполнится 10 раз
for(var icount = 1; icount < howFar; icount++) {
theSum += icount;
sum [icount] = theSum;
}
var newSum = 0;
//Цикл не выполнится ни разу
for(var icount = 1; icount > howFar; icount++) {
newSum += icount;
}
var sum = 0;
//Бесконечный цикл
for(var icount = 1; icount > 0; icount++) {
sum += icount;
}
Цикл for…in
Оператор цикла for…in
предназначен для просмотра всех свойств объекта. Для каждого свойства указанный цикл выполняет операторы, содержащиеся в теле цикла:
for ( переменная in объект ) {
тело цикла
}
Цикл for…in
можно использовать для вывода на экран всех свойств объекта в одном цикле:
function objectDisplay(obj) {
var displayLine;
for (var prop in obj) {
displayLine=obj.name+"."+prop+"="+obj[prop];
WScript.Echo(displayLine)
}
WScript.Echo("--------------");
}
Цикл while
Цикл while
похож на цикл for
. В нем также условие выхода из цикла проверяется перед выполнением итерации, однако в цикле while
, в отличие от for
, нет встроенного счетчика и выражения, его изменяющего.
Оператор while
записывается в следующем виде:
while ( условие ) {
тело цикла
}
Пример использования цикла while
приведен в листинге П1.2.
while
var theMoments = "";
var theCount = 42; // Начальное значение счетчика цикла
while (theCount >= 1) {
if (theCount > 1) {
theMoments = "До взрыва осталось " + theCount + " сек!";
} else {
theMoments = "Осталась секунда!";
}
theCount--; // Уменьшаем значение счетчика
}
theMoments = "ВЗРЫВ!";
Цикл do…while
Этот цикл является примером цикла с пост-условием и записывается в следующем виде:
do {
тело цикла
Интервал:
Закладка: