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

на главную

Жанры

Windows Script Host для Windows 2000/XP

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

Шрифт:

 FOut=FSO.OpenTextFile(PathOut,ForWriting,true);

 //Печатаем заголовок отчета

 TopReport("Поиск записей");

 //Вводим фамилию для поиска

 LastName=WSHInputBox("Введите фамилию для поиска:","Записная книжка")

 //Ищем в XML-файле нужные записи и сохраняем их в массиве PersonArr

 RecordsToArray(LastName);

 //Выводим все найденные записи из массива PersonArr
в выходной файл

 PrintAllFind(LastName);

 //Печатаем итоговую информацию

 BottomReport("Всего найдено: "+PersonArr.length);

 //Открываем выходной файл в Блокноте

 MakeOut;

}

//Запускаем основную функцию

Main;

</script>

</job>

<!-- *************** Удаление записи по фамилии *************** -->

<job id="DelRec">

<script language="VBScript" src="WSHInputBox.vbs"/>

<script language="JScript" src="usage.js"/>

<script language="JScript">

//Поиск фамилии в записной книжке и удаление всех

//реквизитов, относящихся к этой фамилии

function FindAndDelRecord(LastName) {

 var Root,sSelect,i,Parent,NodeList;

 //Создаем объект DOMDocument

 XMLDoc = WScript.CreateObject("Msxml.DOMDocument");

 //Загружаем XML-файл

 XMLDoc.load(PathBook);

 //Сохраняем в переменной Root ссылку на корневой элемент

 //документа

 Root=XMLDoc.documentElement;

 //Формируем строку для поиска фамилии

 sSelect="Person/LastName[text='"+LastName+"']";

 //Создаем коллекцию NodeList всех элементов LastName,

 //значение которых совпадает со значением переменной LastName

 NodeList=XMLDoc.documentElement.selectNodes(sSelect);

 if (NodeList.length==0) //Коллекция NodeList пуста

//Выводим диалоговое окно с сообщением

WshShell.Popup("Фамилия "+LastName+ " не найдена!", 0,

"Записная книжка",vbInformation+vbOkOnly);

 else { //Требуемая фамилия найдена

//Цикл по всем найденным элементам LastName

for (i=0;i<=NodeList.length-1;i++) {

//Определяем родительский элемент (Person) для найденного

//элемента LastName

Parent=NodeList.item(i).parentNode;

//Удаляем
элемент Person вместе со всеми его дочерними элементами

Root.removeChild(Parent);

//Выводим диалоговое окно с сообщением

WshShell.Popup("Запись удалена!",0,

"Записная книжка",vbInformation+vbOkOnly);

}

//Сохраняем содержимое XML-файла на диске

XMLDoc.save(PathBook);

 }

}

//Основная запускная функция

function Main {

 var LastName,Res;

 //Создаем объект WshShell

 WshShell = WScript.CreateObject("WScript.Shell");

 //Определяем пути к файлам

 InitPath;

 LastName=WSHInputBox("Введите фамилию для удаления:","Записная книжка")

 //Запрос на удаление записи

 Res=WshShell.Popup("Удалить фамилию "+LastName+ " из \n"+PathBook+"?",0,

"Записная книжка",vbQuestion+vbYesNo);

 if (Res==vbYes) { //Нажата кнопка Да

//Ищем в книжке нужную фамилию и удаляем относящуюся к

//ней запись

FindAndDelRecord(LastName);

 }

}

//Запускаем основную функцию

Main;

</script>

</job>

<!-- *************** Добавление записи *************** -->

<job id="AddRec">

<script language="VBScript" src="WSHInputBox.vbs"/>

<script language="JScript" src="Usage.js"/>

<script language="JScript">

//Ввод значений полей объекта PersonRec

function MakePersonRec {

 //Создаем новый экземпляр PersonRec объекта Person

 PersonRec=new Person;

 //Вводим значения полей добавляемой записи с помощью диалогового

 //окна со строкой ввода

 PersonRec.LastName=WSHInputBox("Введите фамилию","Добавление записи");

 PersonRec.Name=WSHInputBox("Введите имя","Добавление записи");

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

Магия чистых душ 2

Шах Ольга
Любовные романы:
любовно-фантастические романы
5.56
рейтинг книги
Магия чистых душ 2

Камень

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

Прогрессор поневоле

Распопов Дмитрий Викторович
2. Фараон
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Прогрессор поневоле

Адепт: Обучение. Каникулы [СИ]

Бубела Олег Николаевич
6. Совсем не герой
Фантастика:
фэнтези
попаданцы
9.15
рейтинг книги
Адепт: Обучение. Каникулы [СИ]

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

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

Провинциал. Книга 7

Лопарев Игорь Викторович
7. Провинциал
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Провинциал. Книга 7

Назад в СССР 5

Дамиров Рафаэль
5. Курсант
Фантастика:
попаданцы
альтернативная история
6.64
рейтинг книги
Назад в СССР 5

Темный Лекарь 3

Токсик Саша
3. Темный Лекарь
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Темный Лекарь 3

Наследник

Кулаков Алексей Иванович
1. Рюрикова кровь
Фантастика:
научная фантастика
попаданцы
альтернативная история
8.69
рейтинг книги
Наследник

Долг

Кораблев Родион
7. Другая сторона
Фантастика:
боевая фантастика
5.56
рейтинг книги
Долг

Жребий некроманта 2

Решетов Евгений Валерьевич
2. Жребий некроманта
Фантастика:
боевая фантастика
6.87
рейтинг книги
Жребий некроманта 2

Путь (2 книга - 6 книга)

Игнатов Михаил Павлович
Путь
Фантастика:
фэнтези
6.40
рейтинг книги
Путь (2 книга - 6 книга)

Гром над Империей. Часть 1

Машуков Тимур
5. Гром над миром
Фантастика:
фэнтези
5.20
рейтинг книги
Гром над Империей. Часть 1

Великий род

Сай Ярослав
3. Медорфенов
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Великий род