|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
4.2 ОшибкиОбработка ошибок в VBScript, ошибки времени выполнения, On Error Resume Next, объект Err, команда Raise Ошибки в коде - это скорее правило, чем исключение. Учитывая, что административные скрипты чаще всего пишут администраторы, а не профессиональные программисты - их часто бывает много. Кроме того, при работе административных скриптов часто возникают ошибки времени выполнения - когда поменялась среда работы. При настройках по умолчанию в случае возникновения в скрипте ошибки времени выполнения работа скрипта прекращается и выдается сообщение об ошибке. Правило хорошего тона - предусмотреть в скрипте возможность возникновения ошибок времени выполнения и настроить их обработку. При помощи выражения On Error Resume Next (помещается в блок инициализации) можно изменить поведение среды выполнения - в случае возникновения ошибки выполнение продолжится со следующей строки. Для того, чтобы узнать, какая именно Run-Time ошибка возникла, можно использовать встроенный в VBScript объект Err. Чаще всего используются следующие свойства объекта Err: o Number - номер ошибки (свойство по умолчанию) o Description - сообщение об ошибке, которое соответствует номеру. Методы объекта Err: o Clear - очистить все настройки свойств объекта Err (другой вариант: Err = 0) o Raise - сгенерировать ошибку, обычно для целей тестирования скрипта. При применении On Error Resume Next рекомендуется после каждой опасной строки проверять возникновение ошибки: Dim a, b, c c = a/b Select Case Err.Number Case 0 ‘ Все в порядке WScript.Echo с Case 11 ‘Деление на ноль WScript.Echo “Не могу разделить на ноль” Case Else WScript.Echo “Unexpected Error” WScript.Quit End Select Перечень номеров ошибок (всего 43 штуки) - в справке по VBScript (искать на VBScript Run-Time Errors). В примере нет исправления ошибок - только в одном варианте выход. Однако лучше предоставить пользователю возможность исправить ошибку.
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
Получить учебные материалы по этому курсу
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||