Structured Exception Handling in VB.net

By: Steven Holzner  

Visual Basic also supports structured exception handling. In particular, Visual Basic uses an enhanced version of the Try…Catch…Finally syntax already supported by other languages, such as Java. Here's an example that follows our previous example handling a division by zero exception; I start by creating a Try block—you put the exception-prone code in the Try section and the exception-handling code in the Catch section:

Module Module1
    Sub Main()
        Try
        
        Catch e As Exception
        
        End Try
    End Sub
End Module

Note the syntax of the Catch statement, which catches an Exception object that I'm naming e. When the code in the Try block causes an exception, I can use the e.ToString method to display a message:

Module Module1
    Sub Main()
        Dim int1 = 0, int2 = 1, int3 As Integer
        Try
            int3 = int2 / int1
            System.Console.WriteLine("The answer is {0}", int3)
        Catch e As Exception
            System.Console.WriteLine(e.ToString)
        End Try
    End Sub
End Module

Here's what you see when you run this code:

System.OverflowException: Exception of type System.OverflowException was
thrown.
   at Microsoft.VisualBasic.Helpers.IntegerType.FromObject(Object Value)
   at ConsoleHello.Module1.Main() in
   C:\vbnet\ConsoleHello\Module1.vb:line 5

Besides using the e.ToString method, you can also use the e.message field, which contains this message:

Exception of type System.OverflowException was thrown.



Archived Comments


Most Viewed Articles (in VB.net )

Latest Articles (in VB.net)

Comment on this tutorial