ID3D11Device::SetExceptionMode
例外モード フラグを取得します。
HRESULT
SetExceptionMode(
UINT RaiseFlags
);
パラメータ
- RaiseFlags
1 つ以上の例外フラグを格納する値です。それぞれのフラグは、例外を発生させる条件を指定します。フラグの一覧については、「D3D11_RAISE_FLAG」を参照してください。デフォルト値 0 は、フラグがないことを意味します。
戻り値
このメソッドは、「Direct3D 11 のリターン コード」のいずれかを返します。
解説
エラー状態を継続不能な例外に昇格させるための例外モード フラグを設定します。
エラーが発生すると、Direct3D デバイスは DEVICEREMOVED ステートになり、該当する例外フラグが設定されている場合は例外が発生します。発生する例外は、アプリケーションを終了させるように設計されています。アプリケーションで UnhandledExceptionFilter を使用することによって、終了前にデータを保持する最終的な機会が得られます (「Structured Exception Handling」を参照してください)。一般に、UnhandledExceptionFilters は、アプリケーションでクラッシュが発生した際に (ディスクなどへの) データ保存を目的として利用されます。UnhandledExceptionFilter の際に実行されるコードは、信頼性が保証されません (プロセスが壊れている可能性があるため)。UnhandledExceptionFilter が再クラッシュする前に UnhandledExceptionFilter でデータが保存できた場合でも、そのデータは疑わしいものとみなす必要があります。よって、壊れていない (正常な) 新しいプロセスで検査して使用可能であるかどうかを確認する必要があります。
要件
ヘッダー: D3D11.h 宣言
ライブラリ: D3D11.lib 内容