Во-первых, существует ли такая вещь, как неуловимое исключение в C ++?
Я видел одну статью 2005 года по Microsoft kb , в которой обсуждаются исключения, сгенерированные в одной DLL, которые не могутбыть пойманным в другой DLL.Кажется, это было решено с помощью исправления, несколько лет назад, но у меня может быть эта проблема сейчас - с Visual C ++ 2008.
В частности, на основе отчета файла мини-дамп после сбоя, во время вызова ::fgetpos Я вижу это:
kernel32!UnhandledExceptionFilter+0x55b
В моей голове всплывают две вещи.Сначала я замечаю, что указанный блок catch, расположенный в отдельной DLL от вызывающей DLL, не захватил исключение !!!Это повторение того, что описывает эта статья в КБ?Во-вторых, мне интересно, является ли «необработанное исключение» в kernel32 неспособным к перехвату блоком захвата Visual C ++.Я подумал, что было бы достаточно использовать «всеохватывающие» эллипсы.
Есть ли что-то, чего мне не хватает?