UnhandledExceptionFilter 函式 (errhandlingapi.h)

如果正在偵錯進程,則會將未處理的例外狀況傳遞至偵錯工具的應用程式定義函式。 否則,它會選擇性地顯示 [應用程式錯誤 ] 訊息方塊,並導致執行例外狀況處理常式。 此函式只能從例外狀況處理常式的篩選運算式內呼叫。

語法

LONG UnhandledExceptionFilter(
  [in] _EXCEPTION_POINTERS *ExceptionInfo
);

參數

[in] ExceptionInfo

EXCEPTION_POINTERS結構的指標,指定例外狀況的描述和例外狀況時的處理器內容。 這個指標是 呼叫 GetExceptionInformation 函式的傳回值。

傳回值

函式會傳回下列其中一個值。

傳回碼/值 描述
EXCEPTION_CONTINUE_SEARCH
0x0
正在偵錯進程,因此例外狀況應該 (傳遞為應用程式偵錯工具的第二個機率) 。
EXCEPTION_EXECUTE_HANDLER
0x1
如果在先前呼叫 SetErrorMode時指定了SEM_NOGPFAULTERRORBOX旗標,則不會顯示任何應用程式錯誤訊息框。 函式會將控制項傳回例外狀況處理常式,而此處理程式可自由採取任何適當的動作。

備註

如果進程未進行偵錯,函式會顯示 應用程式錯誤 訊息方塊,視目前的錯誤模式而定。 預設行為是顯示對話方塊,但您可以藉由在 對 SetErrorMode 函式的呼叫中指定SEM_NOGPFAULTERRORBOX來停用此行為。

系統會在內部使用 UnhandledExceptionFilter 來處理進程和執行緒建立期間發生的例外狀況。

需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限桌面應用程式]
目標平台 Windows
標頭 errhandlingapi.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

EXCEPTION_POINTERS

GetExceptionInformation

SetErrorMode

SetUnhandledExceptionFilter

結構化例外狀況處理函式

結構化例外狀況處理概觀