Книга: Windows Script Host для Windows 2000/XP

Обработка исключительных ситуаций 

Обработка исключительных ситуаций 

Во время выполнения сценария могут возникать различные исключительные ситуации (например, деление на ноль или попытка открыть несуществующий файл), которые приводят к ошибкам времени выполнения — при этом на экран выводится диалоговое окно с сообщением об ошибке и выполнение сценария прекращается.

Существует возможность написать код сценария таким образом, чтобы исключительные ситуации не приводили к завершению работы, а обрабатывались бы внутри сценария. Для осуществления подобной обработки исключительных ситуаций в JScript необходимо использовать конструкцию try…catch. Синтаксис следующий:

try
 Защищенный блок
catch (except)
 Блок обработки исключительных ситуаций

После ключевого слова try здесь записываются те операторы, при выполнении которых потенциально может возникнуть ошибка. В качестве параметра except надо использовать любое имя переменной (предварительно объявлять эту переменную не нужно). Если в защищенном блоке не возникло ошибки, то значение этой переменной будет равно нулю; в случае же возникновения исключительной ситуации управление сразу передается в блок catch, при этом переменная except как экземпляр объекта Error будет содержать два свойства: error — числовой код возникшей ошибки и description — краткое описание ошибки.

В качестве примера приведем часть сценария, в которой происходит обработка исключительных ситуаций при подключении сетевого диска:

try {
 //Подключаем сетевой диск
 WshNetwork.MapNetworkDrive(Drive, NetPath);
} catch (e) {
 //Обрабатываем возможные ошибки
 if (e != 0) {
  //Выводим сообщение об ошибке
  Mess="Ошибка при подключении диска " + Drive + " к " + NetPath+
   "nКод ошибки: "+е.number+"nОписание: "+е.description;
  WshShell.Popup(Mess, 0, "Подключение сетевого диска", vbCritical);
 }
}

Оглавление книги


Генерация: 1.552. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз