Андрей Попов - 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.
forvar 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.
whilevar theMoments = "";
var theCount = 42; // Начальное значение счетчика цикла
while (theCount >= 1) {
if (theCount > 1) {
theMoments = "До взрыва осталось " + theCount + " сек!";
} else {
theMoments = "Осталась секунда!";
}
theCount--; // Уменьшаем значение счетчика
}
theMoments = "ВЗРЫВ!";
Цикл do…while
Этот цикл является примером цикла с пост-условием и записывается в следующем виде:
do {
тело цикла
Интервал:
Закладка: