How to use Try Catch in VB.NET

6 Answers

0 votes
Imports System.IO

Module Module1

    Sub Main()

        Try
            Process.Start("calc.exe")
        Catch ex As Exception
            MsgBox("Can't open calc.exe" & vbCrLf & ex.Message)
        End Try

    End Sub
   

    ' run:
    ' 
    ' open the calc

End Module


answered May 4, 2015 by avibootz
edited May 23, 2015 by avibootz
0 votes
Imports System.IO

Module Module1

    Sub Main()

        Try
            Dim o = Nothing
            Console.WriteLine(o.Name)
        Catch ex As System.IO.IOException
            Console.WriteLine("IOException: " & ex.Message)
            Console.WriteLine("Stack Trace: " & vbCrLf & ex.StackTrace)
        Catch ex As NullReferenceException
            Console.WriteLine("NullReferenceException: " & ex.Message)
            Console.WriteLine("Stack Trace: " & vbCrLf & ex.StackTrace)
        Catch ex As Exception
            Console.WriteLine("Exception: " & ex.Message)
            Console.WriteLine("Stack Trace: " & vbCrLf & ex.StackTrace)
        End Try

    End Sub
   

    ' run:
    ' 
    ' NullReferenceException: Object variable or With block variable not set.


    ' Stack Trace:
    ' at Microsoft.VisualBasic.CompilerServices.Symbols.Container..ctor(Object Instance)

    ' at Microsoft.VisualBasic.CompilerServices.NewLateBinding.LateGet(Object Instance, 
    ' Type Type, String MemberName, Object[] Arguments, String[] ArgumentNames, 
    ' Type[] TypeArguments, Boolean[] CopyBack)

    ' at ConsoleApplication_vb.Module1.Main() in C:\ConsoleApplication_vb\Module1.vb:line 9

End Module


answered May 5, 2015 by avibootz
edited Nov 23, 2015 by avibootz
0 votes
Imports System.IO

Module Module1

    Sub Main()

        Dim i As Integer = 100

        Try
            Throw New ArgumentException()
        Catch e As OverflowException When i = 100
            Console.WriteLine("OverflowException When i = 100")
        Catch e As ArgumentException When i = 9
            Console.WriteLine("ArgumentException When i = 9")
        Catch When i = 100
            Console.WriteLine("When i = 100")
        End Try

    End Sub
   

    ' run:
    ' 
    ' When i = 100

End Module


answered May 5, 2015 by avibootz
0 votes
Imports System.IO

Module Module1

    Sub Main()

        Dim i As Integer = 9

        Try
            Throw New ArgumentException()
        Catch e As OverflowException When i = 100
            Console.WriteLine("OverflowException When i = 100")
        Catch e As ArgumentException When i = 9
            Console.WriteLine("ArgumentException When i = 9")
        Catch When i = 100
            Console.WriteLine("When i = 100")
        End Try

    End Sub
   

    ' run:
    ' 
    ' ArgumentException When i = 9

End Module



answered May 5, 2015 by avibootz
0 votes
Imports System.IO

Module Module1

    Sub Main()

        Dim i As Integer = 100

        Try
            Throw New OverflowException()
        Catch e As OverflowException When i = 100
            Console.WriteLine("OverflowException When i = 100")
        Catch e As ArgumentException When i = 9
            Console.WriteLine("ArgumentException When i = 9")
        Catch When i = 100
            Console.WriteLine("When i = 100")
        End Try

    End Sub
   

    ' run:
    ' 
    ' OverflowException When i = 100

End Module



answered May 5, 2015 by avibootz
0 votes
Imports System.IO

Module Module1

    Sub Main()

        Dim i As Integer = 123

        Try
            Throw New OverflowException()
        Catch e As OverflowException When i = 100
            Console.WriteLine("OverflowException When i = 100")
        Catch e As ArgumentException When i = 9
            Console.WriteLine("ArgumentException When i = 9")
        Catch When i = 100
            Console.WriteLine("When i = 100")
        End Try

    End Sub
   

    ' run:
    ' 
    ' Unhandled Exception: System.OverflowException: Arithmetic operation resulted in an overflow.
    ' at ConsoleApplication_vb.Module1.Main() in C:\ConsoleApplication_vb\Module1.vb:line 10

End Module



answered May 5, 2015 by avibootz

Related questions

1 answer 227 views
227 views asked Jan 22, 2021 by avibootz
2 answers 375 views
2 answers 431 views
431 views asked May 4, 2015 by avibootz
1 answer 151 views
151 views asked Oct 8, 2022 by avibootz
1 answer 180 views
180 views asked Jul 11, 2022 by avibootz
1 answer 242 views
242 views asked Jun 4, 2021 by avibootz
...