英語で読む

次の方法で共有


UnhandledExceptionFilter 関数 (errhandlingapi.h)

プロセスがデバッグされている場合に、ハンドルされない例外をデバッガーに渡すアプリケーション定義関数。 それ以外の場合は、必要に応じて [ アプリケーション エラー ] メッセージ ボックスが表示され、例外ハンドラーが実行されます。 この関数は、例外ハンドラーのフィルター式内からのみ呼び出すことができます。

構文

LONG UnhandledExceptionFilter(
  [in] _EXCEPTION_POINTERS *ExceptionInfo
);

パラメーター

[in] ExceptionInfo

例外の説明と例外時のプロセッサ コンテキストを指定する EXCEPTION_POINTERS構造体への ポインター。 このポインターは、 GetExceptionInformation 関数の呼び出しの戻り値です。

戻り値

関数は、次のいずれかの値を返します。

リターン コード/値 Description
EXCEPTION_CONTINUE_SEARCH
0x0
プロセスはデバッグ中であるため、例外は (2 回目の機会として) アプリケーションのデバッガーに渡す必要があります。
EXCEPTION_EXECUTE_HANDLER
0x1
SetErrorMode の以前の呼び出しでSEM_NOGPFAULTERRORBOX フラグが指定された場合、アプリケーション エラー メッセージ ボックスは表示されません。 この関数は例外ハンドラーに制御を返します。このハンドラーは、適切なアクションを自由に実行できます。

解説

プロセスがデバッグされていない場合、関数は現在のエラー モードに応じて [ アプリケーション エラー ] メッセージ ボックスを表示します。 既定の動作ではダイアログ ボックスが表示されますが、 SetErrorMode 関数の呼び出しで SEM_NOGPFAULTERRORBOXを指定することで無効にすることができます。

システムは UnhandledExceptionFilter を内部的に使用して、プロセスとスレッドの作成時に発生する例外を処理します。

要件

   
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー errhandlingapi.h (Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

EXCEPTION_POINTERS

GetExceptionInformation

SetErrorMode

SetUnhandledExceptionFilter

構造化例外処理関数

構造化例外処理の概要