RaiseFailFastException 関数 (errhandlingapi.h)
すべての例外ハンドラー (フレームまたはベクター ベース) をバイパスする例外を発生させます。 この例外を発生させると、アプリケーションが終了し、Windows エラー報告が有効になっている場合は、Windows エラー報告を呼び出します。
構文
void RaiseFailFastException(
[in, optional] PEXCEPTION_RECORD pExceptionRecord,
[in, optional] PCONTEXT pContextRecord,
[in] DWORD dwFlags
);
パラメーター
[in, optional] pExceptionRecord
例外情報を含む EXCEPTION_RECORD 構造体へのポインター。 ExceptionAddress メンバーと ExceptionCode メンバーを指定する必要があります。
このパラメーターが NULL の場合、関数は例外レコードを作成し、 ExceptionCode メンバーを STATUS_FAIL_FAST_EXCEPTION に設定します。 dwFlags パラメーターに FAIL_FAST_GENERATE_EXCEPTION_ADDRESS フラグが含まれている場合、この関数は ExceptionAddress メンバーも設定します。
[in, optional] pContextRecord
コンテキスト情報を含む CONTEXT 構造体へのポインター。 NULL の場合、この関数はコンテキストを生成します (ただし、コンテキストは呼び出し元のコンテキストと完全には一致しません)。
[in] dwFlags
この関数の動作を制御する 0 または次のフラグを指定できます。
値 | 意味 |
---|---|
|
RaiseFailFastException で、EXCEPTION_RECORDの ExceptionAddress をこの関数の戻りアドレス (RaiseFailFastException の呼び出し後の呼び出し元の次の命令) に設定します。 この関数は、 ExceptionAddress が NULL でない場合にのみ例外アドレスを設定 します。 |
戻り値
なし
解説
通常、アプリケーションが正しくない状態にあり、アプリケーションを直ちに終了し、Windows エラー レポートを作成する場合は、この関数を呼び出します。
WER サービスが無効になっているか、開始できない場合、またはプロセスにデバッガーがアタッチされていない場合、プロセスは終了します。
この関数では、2 回目の例外が発生します。 JIT デバッグが有効になっている場合、デバッガーはプロセスにアタッチします。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | errhandlingapi.h (Windows.h を含む) |
Library | Kernel32.lib |
[DLL] | Kernel32.dll |
関連項目
Environment.FailFast