Structured Exception Handling in VB.net

By: Steven Holzner Viewed: 153414 times  Printer Friendly Format    


Visual Basic also supports structured exception handling. In particular, Visual Basic uses an enhanced version of the TryCatchFinally 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.


Most Viewed Articles (in VB.net )

Latest Articles (in VB.net)

Comment on this tutorial