Что @SearchAndResQ не упоминание, почему ваш код не работает.
Проблема здесь в том, что классический ASP остановит выполнение и вернет клиенту HTTP 500 Internal Server
(в зависимости от того, как настроен сервер, будет зависеть, насколько подробным будет ответ).
Чтобы остановить остановку выполнения при обнаружении ошибки или вызове ее вручную с помощью Err.Raise()
, используйте On Error Resume Next
. Этот оператор указывает среде выполнения VBScript переходить к следующей строке при обнаружении ошибки и заполнять объект Err
.
Чтобы затем зафиксировать эту ошибку, проверьте свойство Err.Number
, чтобы узнать, возникла ли ошибка. Когда вы закончите, используйте On Error Goto 0
, чтобы сбросить обработку ошибок до состояния по умолчанию (остановка выполнения при ошибке).
Если вы хотите проверить несколько ошибок между On Error Resume Next
и On Error Goto 0
внутри проверки ошибок (If Err.number <> 0 Then
), используйте Err.Clear()
для сброса объекта Err
(Err.Number = 0
).
'We are expecting the next statement to sometimes fail so try to trap the error.
On Error Resume Next
' << Statement here you expect to error will be skipped >>
'Check whether error occurred.
If Err.Number <> 0 Then
'An error occurred, handle it here (display message etc).
'Error has been handled reset the Err object.
Call Err.Clear() 'Err.Number is now 0
End If
'Stop trapping errors
On Error Goto 0
person
user692942
schedule
04.09.2014