to be honest it was very hard to follow what you wrote

Linux has no builtin-support for exceptions, so I guess exception-handling is program-counter based in FPC just like in Kylix....I personally prefer to not use exceptions in dlls and safeguard all callback executions in them as well as a top-level catch block in every exported function which simply sets the return value of the function to some constant....this way no matter what you do, all exceptions are caught....an exception thrown from C++ host for example would be reported as an EExternal with error code matching magic exception code shared by all C++ exceptions....I did not quite understand your problem with the raise Exception.Create('') and bypassing all installed handlers, I'd say a snippet of code is better than thousands of words