Обработка ошибок ASP и COM - PullRequest
1 голос
/ 02 июня 2011

Мы разрабатываем веб-сервер на базе ASP для работы на устройстве WIN CE.Страницы ASP используют компонент COM для выполнения операций на стороне сервера.

У нас есть пара сомнений относительно обработки ошибок.Мы сомневаемся,

Каков наилучший способ передачи информации об ошибках из COM-компонента на ASP-страницу?Мы используем VBScript для написания ASP
Если мы собираемся отображать конкретные сообщения об ошибках, такие как «Тайм-аут соединения», полученные от COM-сервера, каков наилучший механизм передачи сообщения об ошибке от COM?Где мы можем найти больше информации об обработке ошибок?

Мы новички в VBScript и не смогли найти много информации о теме в сети

Ответы [ 2 ]

2 голосов
/ 03 июня 2011

Методы COM-объекта обычно возвращают HRESULT, который содержит код ошибки в случае сбоя. Вы можете попытаться получить это значение в VB.Script, прочитав свойство Err.Number .

0 голосов
/ 30 сентября 2011

Вот один подход, который может работать для вас. Поместите ваш вызов в COM-объект внутри подпрограммы или функции, чтобы вы могли использовать «On Error Resume Next» только в этой области. (Если вы не делаете On Error Resume Next везде, что, возможно, тоже нормально, если вы делаете много ошибок). Всякий раз, когда вы делаете что-либо, что может вызвать ошибку, например, вызывая ваш COM-объект, проверьте наличие ошибки и обработайте ее соответствующим образом. Например, в случае, когда вы просто хотите тихо зарегистрировать ошибку, вы можете вызвать подпрограмму, подобную этой:

Sub CheckError
    If Err Then
        WriteLog "ERROR " & Err.Number & ": " & Err.Description
        Err.Clear
    End If
End Sub 'CheckError

Или же выйдите и отобразите информацию об ошибке для пользователя.

...