Метод Raise (Объект Err)

Обновлен: Ноябрь 2007

Генерирует ошибку во время выполнения; может использоваться вместо оператора Error.

Public Sub Raise( _
   ByVal Number As Integer, _
   Optional ByVal Source As Object = Nothing, _
   Optional ByVal Description As Object = Nothing, _
   Optional ByVal HelpFile As Object = Nothing, _
   Optional ByVal HelpContext As Object = Nothing _
)

Параметры

  • Number
    Обязательно. Целое число типа Long, определяющее тип ошибки. Ошибки Visual Basic находятся в диапазоне от 0 до 65535; диапазон 0-512 зарезервирован для системных ошибок; диапазон 513-65535 доступен для ошибок, определяемых пользователем. При задании свойства Number для кода создания ошибки в модуле класса к константе vbObjectError необходимо добавить номер пользовательского кода ошибки. Например, чтобы создать номер ошибки 513, нужно присвоить vbObjectError + 513 свойству Number.

  • Source
    Опционально. Выражение типа String, содержащее имя вызвавшего ошибку объекта или приложения. При задании этого свойства для объекта используйте форму project.class. Если Source не указан, используется идентификатор процесса текущего проекта Visual Basic.

  • Description
    Опционально. ВыражениеString, описывающее ошибку. Если этот параметр не указывается, то анализируется значение свойства Number. Если данное значение согласуется с кодом ошибки во время выполнения Visual Basic, то возвращаемая функцией Error строка используется в качестве свойства Description. Если не существует ошибки Visual Basic, соответствующей свойству Number, то используется сообщение "Application-defined or object-defined error" ("Ошибка, определенная приложением или объектом").

  • HelpFile
    Необязательный атрибут. Полный путь к файлу справки, в котором может содержаться справка о данной ошибке. Если данный аргумент не указан, то используется полный путь (содержащий имя устройства, путь и имя файла) к файлу справки Visual Basic.

  • HelpContext
    Необязательный атрибут. Идентификатор контекста, определяющий для данной ошибки раздел справки в файле HelpFile. Если данный параметр опущен, то используется идентификатор контекста файла справки Visual Basic, соответствующий свойству Number.

Исключения

Тип исключения

Номер ошибки

Условия

ArgumentException

5

Number больше 65535.

См. столбец "Номер ошибки", если выполняется обновление приложений Visual Basic 6.0, в которых используется неструктурированная обработка ошибок. (Можно сравнить номер ошибки с Свойство Number (объект Err).) Однако по возможности следует заменять такую систему управления ошибками на Обзор структурной обработки исключений в Visual Basic.

Заметки

Все аргументы Raise, за исключением Number, необязательны. Если необязательные аргументы опущены, а параметры свойства объекта Err содержат непустые значения, то эти значения и являются значениями ошибки.

Метод Raise полезен для генерации ошибок при написании модулей класса, поскольку объектом Err предоставляется больше данных, чем при генерации ошибок с помощью оператора Error. Например, с помощью метода Raise в свойстве Source можно указать вызвавший ошибку источник, задать ссылку для интерактивной справки и выполнить иные действия.

Пример

В этом примере метод Raise объекта Err используется для генерации ошибки внутри функции, написанной на Visual Basic. Вызываемая функция может перехватить ошибку и вывести ее пользователю в окне сообщения.

Const WidthError As Integer = 1
Const WidthHelp As Object = 101

Sub TestWidth(ByVal width As Integer)
  If width > 1000 Then
      Err.Raise(vbObjectError + 512 + WidthError, "TestWidth", _
      "Width must be less than 1000.", "HelpFile.hlp", WidthHelp)
  End If
End Sub

Sub CallingProcedure()
  Try
    TestWidth(2000)
  Catch ex As Exception
    MsgBox(ex.Message)
  End Try
End Sub

Требования

Пространство имен: Microsoft.VisualBasic

**Модуль:**ErrObject

**Сборка:**Visual Basic (библиотека времени выполнения, в Microsoft.VisualBasic.dll)

См. также

Ссылки

Объект Err (Visual Basic)

Метод Clear (объект Err)

Свойство Description (Объект Err)

Оператор Error

Свойство HelpContext (Объект Err)

Свойство HelpFile (объект Err)

Свойство LastDllError (Объект Err)

Свойство Number (объект Err)

Оператор On Error (Visual Basic)

Свойство Source (Объект Err)

ArgumentException