_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 中定義。
例外狀況號碼 (未帶正負號的 long) | 訊號 |
---|---|
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