_set_error_mode
__error_mode を C ランタイムがプログラムを終了する可能性のあるエラーのエラー メッセージを書き込む既定以外の位置を確認するように変更します。
重要
この API は、Windows ランタイムで実行するアプリケーションでは使用できません。詳細については、「/ZW でサポートされない CRT 関数」を参照してください。
int _set_error_mode(
int modeval
);
パラメーター
- modeval
エラー メッセージのコピー先。
戻り値
エラーが発生した古い設定または -1 を返します。
解説
__error_modeの値を設定すると、エラー出力シンクを制御します。 たとえば、標準エラー出力に直接または MessageBox API を使用することもできます。
modeval パラメーターには、次の値の 1 に設定できます。
パラメーター |
説明 |
---|---|
_OUT_TO_DEFAULT |
エラーは __app_typeシンクによって決まります。 |
_OUT_TO_STDERR |
エラー シンクは、標準エラーです。 |
_OUT_TO_MSGBOX |
シンクはエラー メッセージ ボックスです。 |
_REPORT_ERRMODE |
__error_mode 現在の値を報告します。 |
表示される以外の値が渡された場合、無効なパラメーター ハンドラーが パラメーターの検証"に説明されているように、呼び出されます。 実行の継続_set_error_mode は EINVAL と戻り errno を -1 に設定します。
これは アサートします。で使用する場合は、_set_error_mode はプログラムの実行を続行できるように、ダイアログ ボックスの中断ステートメントを表示し、Ignore ボタンを選択することもできます。
必要条件
ルーチン |
必須ヘッダー |
---|---|
_set_error_mode |
<stdlib.h> |
使用例
// crt_set_error_mode.c
// compile with: /c
#include <stdlib.h>
#include <assert.h>
int main()
{
_set_error_mode(_OUT_TO_STDERR);
assert(2+2==5);
}