July 2015
Intermediate to advanced
1300 pages
87h 27m
English
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 ...