There are two good reasons to code it the Microsoft way.
First, the Microsoft code can be slightly more efficient, especially when several Catch clauses are used, because only the specific clause for the error exception is executed instead of all of them.
But the more important reason is that VB.NET's Intellisense will help you find the exception you need to test for! Help like the illustration shown at the bottom of the page.
Now ... isn't that a lot more convenient than remembering what "53" means?
The information in the Exception object can be useful too. To find out just how useful it is, use your debugging techniques from the previous chapter to find out! Try this code:
~~~~~~~~~~~~~~~~~~~~~~~~~
Try
' The traditional Divide By Zero error
Dim X, Y, Z As Integer
X = 1 : Y = 0
Z = X / Y
Catch ex As Exception
Debug.WriteLine("caught exception" & vbCrLf & vbTab & ex.ToString)
End Try
~~~~~~~~~~~~~~~~~~~~~~~~~


