_seh_filter_dll
, _seh_filter_exe
Определяет исключение и необходимые связанные действия.
Синтаксис
int __cdecl _seh_filter_dll(
unsigned long exceptionNum,
struct _EXCEPTION_POINTERS* exceptionPtr
);
int __cdecl _seh_filter_exe(
unsigned long exceptionNum,
struct _EXCEPTION_POINTERS* exceptionPtr
);
Параметры
exceptionNum
Идентификатор исключения.
exceptionPtr
Указатель на данные об исключении.
Возвращаемое значение
Целое число, обозначающее необходимое действие на основе результатов обработки исключения.
Замечания
Эти методы вызываются выражением фильтра исключений try-except Statement. Метод просматривает постоянную внутреннюю таблицу для идентификации исключения и определяет соответствующее действие, как показано ниже. Номера исключений определяются в файле winnt.h, а номера сигналов — в файле signal.h.
Номер исключения (неназначенные длинные) | Номер сигнала |
---|---|
STATUS_ACCESS_VIOLATION |
SIGSEGV |
STATUS_ILLEGAL_INSTRUCTION |
SIGILL |
STATUS_PRIVILEGED_INSTRUCTION |
SIGILL |
STATUS_FLOAT_DENORMAL_OPERAND |
SIGFPE |
STATUS_FLOAT_DIVIDE_BY_ZERO |
SIGFPE |
STATUS_FLOAT_INEXACT_RESULT |
SIGFPE |
STATUS_FLOAT_INVALID_OPERATION |
SIGFPE |
STATUS_FLOAT_OVERFLOW |
SIGFPE |
STATUS_FLOAT_STACK_CHECK |
SIGFPE |
STATUS_FLOAT_UNDERFLOW |
SIGFPE |
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
Заголовок: corecrt_startup.h