共用方式為


ErrObject.Raise 方法

產生執行階段錯誤;可以用來取代 Error 陳述式。

命名空間: Microsoft.VisualBasic
組件: Microsoft.VisualBasic (在 microsoft.visualbasic.dll 中)

語法

'宣告
Public Sub Raise ( _
    Number As Integer, _
    <OptionalAttribute> Optional Source As Object = Nothing, _
    <OptionalAttribute> Optional Description As Object = Nothing, _
    <OptionalAttribute> Optional HelpFile As Object = Nothing, _
    <OptionalAttribute> Optional HelpContext As Object = Nothing _
)
'用途
Dim instance As ErrObject
Dim Number As Integer
Dim Source As Object
Dim Description As Object
Dim HelpFile As Object
Dim HelpContext As Object

instance.Raise(Number, Source, Description, HelpFile, HelpContext)
public void Raise (
    int Number,
    [OptionalAttribute] Object Source,
    [OptionalAttribute] Object Description,
    [OptionalAttribute] Object HelpFile,
    [OptionalAttribute] Object HelpContext
)
public:
void Raise (
    int Number, 
    [OptionalAttribute] Object^ Source, 
    [OptionalAttribute] Object^ Description, 
    [OptionalAttribute] Object^ HelpFile, 
    [OptionalAttribute] Object^ HelpContext
)
public void Raise (
    int Number, 
    /** @attribute OptionalAttribute() */ Object Source, 
    /** @attribute OptionalAttribute() */ Object Description, 
    /** @attribute OptionalAttribute() */ Object HelpFile, 
    /** @attribute OptionalAttribute() */ Object HelpContext
)
public function Raise (
    Number : int, 
    Source : Object, 
    Description : Object, 
    HelpFile : Object, 
    HelpContext : Object
)

參數

  • Number
    必要項。Long 整數,可識別錯誤的本質。Visual Basic 的錯誤位於 0–65535 的範圍內;0–512 的範圍是保留給系統錯誤使用;513–65535 的範圍則是供使用者定義的錯誤使用。將 Number 屬性設定為您在類別模組中的錯誤碼時,您可將錯誤代碼加入 vbObjectError 常數。例如,若要產生錯誤代碼 513,請將 vbObjectError + 513 指派給 Number 屬性。
  • Source
    選擇項。String 運算式,可為產生錯誤的物件或應用程式命名。為物件設定這個屬性時,請使用以下格式:project.class。如果未指定 Source,則會使用目前 Visual Basic 專案的處理序 ID。
  • Description
    選擇項。描述錯誤的 String 運算式。如果未指定,則會檢查 Number 屬性中的值。如果它可以對應到 Visual Basic 執行階段錯誤碼,則 Error 函式將傳回的字串會當成 Description 屬性使用。如果沒有任何 Visual Basic 錯誤對應到 Number 屬性,則會使用「應用程式定義或物件定義的錯誤」訊息。
  • HelpFile
    選擇項。可以找到與這個錯誤有關的說明檔之完整路徑。如果未指定,則 Visual Basic 會使用 Visual Basic 說明檔的完整磁碟機、路徑和檔名。
  • HelpContext
    選擇項。可識別 HelpFile 中提供之錯誤說明的主題代碼。如果省略,則會使用對應到 Number 屬性的錯誤之 Visual Basic 說明檔主題代碼 (如果存在的話)。

備註

如需詳細資訊,請參閱 Visual Basic 的主題 Raise 方法 (Err Object)

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

平台

Windows 98、 Windows 2000 SP4、 Windows CE、 Windows Millennium Edition、 Windows Mobile for Pocket PC、 Windows Mobile for Smartphone、 Windows Server 2003、 Windows XP Media Center Edition、 Windows XP Professional x64 Edition、 Windows XP SP2、 Windows XP Starter Edition

.NET Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱系統需求一節的內容。

版本資訊

.NET Framework

支援版本:2.0、1.1、1.0

.NET Compact Framework

支援版本:2.0、1.0

請參閱

參考

ErrObject 類別
ErrObject 成員
Microsoft.VisualBasic 命名空間
ArgumentException Class

其他資源

Raise 方法 (Err Object)
Err 物件 (Visual Basic)
Clear 方法 (Err 物件)
Description 屬性 (Err 物件)
Error 陳述式
HelpContext 屬性 (Err 物件)
HelpFile 屬性 (Err 物件)
LastDllError 屬性 (Err 物件)
Number 屬性 (Err 物件)
On Error 陳述式 (Visual Basic)
Source 屬性 (Err 物件)