Raise 方法(Err 对象)

更新:2007 年 11 月

生成一个运行时错误;可以替代 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 表达式。为对象设置此属性时,使用“项目.类”格式。如果没有指定 Source,则使用当前 Visual Basic 项目的进程 ID。

  • Description
    可选。描述错误的 String 表达式。如果未指定,则检查 Number 属性值。如果它可以映射到 Visual Basic 运行时错误代码,则将 Error 函数要返回的字符串用作 Description 属性。如果没有对应于 Number 属性的 Visual Basic 错误,则使用“应用程序定义的错误或对象定义的错误”消息。

  • HelpFile
    可选。帮助文件的完全限定路径,在该文件中可找到此错误的帮助信息。如果未指定 HelpFile 参数,则 Visual Basic 使用 Visual Basic 帮助文件的完全限定的驱动器、路径和文件名。

  • HelpContext
    可选。上下文 ID,标识 HelpFile 中提供错误帮助的主题。如果省略该参数,则使用与 Number 属性对应的错误的 Visual Basic 帮助文件上下文 ID(如果有)。

异常

异常类型

错误号

条件

ArgumentException

5

Number 大于 65535。

如果正在升级使用非结构化错误处理方式的 Visual Basic 6.0 应用程序,请参见“错误号”一列。(您可以根据 Number 属性(Err 对象) 比较错误号。) 然而,如果可能,应当考虑用 Visual Basic 的结构化异常处理概述 替换这种错误控制。

备注

除了 Number 以外的所有 Raise 参数都是可选项。如果省略可选参数,且 Err 对象的属性设置包含未清除的值,则这些值用作错误的值。

因为 Err 对象提供的信息多于使用 Error 语句生成错误时提供的信息,所以编写类模块时, Raise 对生成错误非常有用。例如,使用 Raise 方法可以在 Source 属性中指定生成错误的源,可以引用错误的联机帮助,等等。

示例

本示例使用 Err 对象的 Raise 方法在用 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