Handling Exceptions

Functions from Windows API return a numeric value as their results (called HRESULT), for telling the caller whether the function succeeded or failed. You can handle exceptions coming from the P/Invokes world with a classic Try..Catch block, and then the .NET Framework can wrap unmanaged errors that have a .NET counterpart into managed exceptions. For instance, if a Windows API invocation causes an out-of-memory error, the .NET Framework maps such error as an OutOfMemoryException that you can embrace within a normal Try..Catch block. It is reasonable that not all unmanaged errors can have a managed counterpart, due to differences in COM and .NET architectures. To solve this, .NET provides the System.Runtime.InteropServices.SEHException ...

Get Visual Basic 2015 Unleashed now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.