Having some exception in the library without the source code can be a problem, but, if the library is good enough and this is not a library bug, the problem is usually easy to solve.
Do the following: catch all exception in the thread, on the stack frame on top of the problematic point (could be on the very top stack frame of the thread, which you ultimately have to do with most threads). When exception is caught, output (log, for example) the exception
StackTrace
:
http://msdn.microsoft.com/en-us/library/system.exception.stacktrace.aspx[
^].
This is just a string. Reading the trace, you will see the stack of calls leading to the point where the exception is thrown. Very usual case is that you call something with bad parameters going outside of some valid index range. Chances to locate and fix the bug are usually high.
Good luck,
—SA