Категории
Самые читаемые
onlinekniga.com » Компьютеры и Интернет » Программное обеспечение » Windows Script Host для Windows 2000/XP - Андрей Попов

Windows Script Host для Windows 2000/XP - Андрей Попов

Читать онлайн Windows Script Host для Windows 2000/XP - Андрей Попов

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 90 91 92 93 94 95 96 97 98 ... 175
Перейти на страницу:

В В  Root.removeChild(Parent);

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

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

    "Работа с XML-файлом",vbInformation+vbOkOnly);

В  }

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

В  XMLDoc.save(PathBook);

В }

}

//Построение путей к файлам

function InitPath() {

В BasePath=WshShell.CurrentDirectory+"\";

 //Путь к файлу с данными

В PathBook=BasePath+"book.xml";

}

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

function Main() {

В var Res;

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

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

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

В InitPath();

В LastName=InputName();

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

 Res=WshShell.Popup("Удалить фамилию "+LastName+

В  " РёР· n"+PathBook+"?",0,

  "Работа с XML-файлом",vbQuestion+vbYesNo);

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

В  //Рщем РІ книжке нужную фамилию Рё удаляем относящуюся Рє

  //ней запись

В  FindAndDelRecord();

В }

}

/*******************  Начало  **********************************/

Main();

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

</script>В 

</job>

Глава 7

Способы организации диалогового режима работы сценариев 

В этой главе на примере работы с записной книжкой будут рассмотрены три способа организации из сценария диалога с пользователем.

Во-первых, мы еще раз подробно остановимся на том, как можно использовать параметры командной строки для запуска различных заданий из многозадачного WS-файла, который в нашем случае будет реализовывать несколько функций для работы с записной книжкой.

Во-вторых, для того же WS-файла мы создадим кнопочное (командное) меню, в котором пользователь сможет выбрать нужное ему действие с помощью ввода определенных символов в диалоговом окне.

Наконец, будет показано, как можно организовать в сценарии полноценный пользовательский интерфейс с помощью HTML-форм и браузера Internet Explorer.

Многозадачный сценарий для работы с записной книжкой

В качестве примера рассмотрим сценарий для работы с записной книжкой в XML-формате (структура файла book.xml, в котором хранится записная книжка, описана в предыдущей главе), в котором будут реализованы следующие функции:

□ просмотр всех записей в алфавитном порядке;

□ поиск записей по фамилии;

□ добавление и удаление записей.

Каждая из этих задач реализуется в виде отдельного задания в файле PhoneBook.wsf (листинг 7.1).

Листинг 7.1. Схема многозадачного файла PhoneBook.wsf

<package>

 <!-- ****************** Просмотр всех записей ******************* -->

В <job id="SortName">

  …

В </job>

 <!-- *************** поиск записей по фамилии ************** -->

В <job id="FindName">

  …

В </job>

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

В <job id="DelRec">

  …

В </job>

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

В <job id="AddRec">

  …

В </job>

</package>

Некоторые функции (например, настройка пути к XML-файлу) должны присутствовать во всех заданиях, поэтому такие общие функции мы вынесем в отдельный файл Usage.js, который будет подключаться в каждом из заданий следующим образом:

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

В файл Usage.js помещены следующие функции:

□ конструктор объекта Person (одна запись из книжки);

□ функция GetTagVal(obj, tgName), которая возвращает значения тега tgName XML-элемента obj;

□ функция PersonToArray(XNode), которая заполняет поля экземпляра PersonRec объекта Person данными из соответствующих XML-элементов и добавляет сформированную запись в массив PersonArr;

□ функции TopReport(Mess) и BottomReport(Mess), с помощью которых в выходной файл печатается заголовок отчета и итоговая информация соответственно;

□ функция PrintPerson(PersRec), в которой происходит вывод данных из полей объекта PersonRec в выходной файл;

□ функция MakeOut(), которая обеспечивает запуск Блокнота и открывает в нем выходной файл;

□ функция InitPath(), в которой строятся пути к XML-файлу, содержащему данные, и выходному файлу.

Usage.js объявляются глобальные переменные и константы. Полностью содержимое файла Usage.js приведено в листинге 7.2.

Листинг 7.2. Общие функции для работы с записной книжкой

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

/* РРјСЏ: Usage.jsВ В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В В  */

/* Язык: JScript                                                   */

/* Описание: Общие функции для записной книжки                     */

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

//Объявляем переменные

var

В WshShell,FSO,

 BasePath,     //Путь к текущему каталогу

 PathBook,     //Путь к файлу с данными

 PathOut,      //Путь к выходному файлу

 FBook,        //Файл с данными

 FOut,         //Выходной файл

 NomRec=0,     //Счетчик количества записей

 PersonRec,    //Объект для хранения данных об одном человеке

 PersonArr;    //Массив для хранения объектов PersonRec

1 ... 90 91 92 93 94 95 96 97 98 ... 175
Перейти на страницу:
На этой странице вы можете бесплатно читать книгу Windows Script Host для Windows 2000/XP - Андрей Попов.
Комментарии