ErrObject.Raise(Int32, Object, Object, Object, Object) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menghasilkan kesalahan run-time; dapat digunakan alih-alih Error
pernyataan .
public void Raise (int Number, object? Source = default, object? Description = default, object? HelpFile = default, object? HelpContext = default);
public void Raise (int Number, object Source = default, object Description = default, object HelpFile = default, object HelpContext = default);
member this.Raise : int * obj * obj * obj * obj -> unit
Public Sub Raise (Number As Integer, Optional Source As Object = Nothing, Optional Description As Object = Nothing, Optional HelpFile As Object = Nothing, Optional HelpContext As Object = Nothing)
Parameter
- Number
- Int32
Wajib diisi. Long
bilangan bulat yang mengidentifikasi sifat kesalahan. Kesalahan Visual Basic berada dalam rentang 0-65535; rentang 0-512 disediakan untuk kesalahan sistem; rentang 513-65535 tersedia untuk kesalahan yang ditentukan pengguna. Saat mengatur Number
properti ke kode kesalahan Anda sendiri dalam modul kelas, Anda menambahkan nomor kode kesalahan Anda ke vbObjectError
konstanta. Misalnya, untuk menghasilkan nomor kesalahan 513, tetapkan vbObjectError + 513
ke Number
properti .
- Source
- Object
Pilihan. String
ekspresi penamaan objek atau aplikasi yang menghasilkan kesalahan. Saat mengatur properti ini untuk objek, gunakan formulir project
.class
. Jika Source
tidak ditentukan, ID proses proyek Visual Basic saat ini digunakan.
- Description
- Object
Pilihan. String
ekspresi yang menjelaskan kesalahan. Jika tidak ditentukan, nilai dalam Number
properti diperiksa. Jika dapat dipetakan ke kode kesalahan run-time Visual Basic, string yang akan dikembalikan oleh Error
fungsi digunakan sebagai Description
properti . Jika tidak ada kesalahan Visual Basic yang Number
terkait dengan properti , pesan "Kesalahan yang ditentukan aplikasi atau ditentukan objek" digunakan.
- HelpFile
- Object
Pilihan. Jalur yang sepenuhnya memenuhi syarat ke file Bantuan di mana bantuan tentang kesalahan ini dapat ditemukan. Jika tidak ditentukan, Visual Basic menggunakan drive, jalur, dan nama file yang sepenuhnya memenuhi syarat dari file Bantuan Visual Basic.
- HelpContext
- Object
Pilihan. ID konteks yang mengidentifikasi topik dalam HelpFile
yang memberikan bantuan untuk kesalahan tersebut. Jika dihilangkan, ID konteks file Bantuan Visual Basic untuk kesalahan yang terkait dengan Number
properti digunakan, jika ada.
Contoh
Contoh ini menggunakan Err
metode objek Raise
untuk menghasilkan kesalahan dalam fungsi yang ditulis dalam Visual Basic. Fungsi panggilan dapat menangkap kesalahan dan melaporkannya ke pengguna dengan kotak pesan.
Module Module1
Const WidthErrorNumber As Integer = 1000
Const WidthHelpOffset As Object = 100
Sub Main()
CallingProcedure()
End Sub
Sub TestWidth(ByVal width As Integer)
If width > 1000 Then
' Replace HelpFile.hlp with the full path to an appropriate
' help file for the error. Notice that you add the error
' number you want to use to the vbObjectError constant.
' This assures that it will not conflict with a Visual
' Basic error.
Err.Raise(vbObjectError + WidthErrorNumber, "ConsoleApplication1.Module1.TestWidth",
"Width must be less than 1000.", "HelpFile.hlp", WidthHelpOffset)
End If
End Sub
Sub CallingProcedure()
Try
' The error is raised in TestWidth.
TestWidth(2000)
Catch ex As Exception
' The Err object can access a number of pieces of
' information about the error.
Console.WriteLine("Information available from Err object:")
Console.WriteLine(Err.Number)
Console.WriteLine(Err.Description)
Console.WriteLine(Err.Source)
Console.WriteLine(Err.HelpFile)
Console.WriteLine(Err.HelpContext)
Console.WriteLine(Err.GetException)
Console.WriteLine(vbCrLf & "Information available from Exception object:")
Console.WriteLine(ex.Message)
Console.WriteLine(ex.ToString)
Err.Clear()
End Try
End Sub
End Module
' The example produces the following output:
' Information available from Err object:
' -2147220504
' Width must be less than 1000.
' ConsoleApplication1.Module1.TestWidth
' HelpFile.hlp
' 100
' System.Exception: Width must be less than 1000.
' at Microsoft.VisualBasic.ErrObject.Raise(Int32 Number, Object Source, Object
' Description, Object HelpFile, Object HelpContext)
' at ConsoleApplication1.Module1.TestWidth(Int32 width) in C:\Users\example\App
' Data\Local\Temporary Projects\ConsoleApplication1\Module1.vb:line 17
' at ConsoleApplication1.Module1.CallingProcedure() in C:\Users\example\AppData
' \Local\Temporary Projects\ConsoleApplication1\Module1.vb:line 25
'
' Information available from Exception object:
' Width must be less than 1000.
' System.Exception: Width must be less than 1000.
' at Microsoft.VisualBasic.ErrObject.Raise(Int32 Number, Object Source, Object
' Description, Object HelpFile, Object HelpContext)
' at ConsoleApplication1.Module1.TestWidth(Int32 width) in C:\Users\example\App
' Data\Local\Temporary Projects\ConsoleApplication1\Module1.vb:line 17
' at ConsoleApplication1.Module1.CallingProcedure() in C:\Users\example\AppData
' \Local\Temporary Projects\ConsoleApplication1\Module1.vb:line 25
Keterangan
Raise
Semua argumen kecuali Number
bersifat opsional. Jika Anda menghilangkan argumen opsional, dan pengaturan Err
properti objek berisi nilai yang belum dibersihkan, nilai tersebut berfungsi sebagai nilai untuk kesalahan Anda.
Err
Karena objek memberikan informasi yang lebih kaya daripada ketika Anda menghasilkan kesalahan dengan Error
pernyataan , Raise
berguna untuk menghasilkan kesalahan saat menulis modul kelas. Misalnya, dengan Raise
metode , sumber yang menghasilkan kesalahan dapat ditentukan dalam Source
properti , Bantuan online untuk kesalahan dapat dirujuk, dan sebagainya.