ネイティブ ランタイム チェックのカスタマイズ

/RTC (ランタイム チェック) を使用してコンパイルするか、runtime_checks プラグマを使用すると、C ランタイム ライブラリによってネイティブ ランタイム チェックが提供されます。 ランタイム チェックのカスタマイズが必要になる場合があります。次に例を示します。

  • ランタイム チェック メッセージを既定とは異なるファイルや出力先に転送する。

  • サードパーティ デバッガーでのランタイム チェック メッセージの出力先を指定する。

  • C ランタイム ライブラリのリリース バージョンでコンパイルされたプログラムからのランタイム チェック メッセージを報告する。 ライブラリのリリース バージョンでは、ランタイム エラーの報告に _CrtDbgReportW は使用されません。 代わりに、ランタイム エラーごとに [Assert] ダイアログ ボックスが表示されます。

    ランタイム エラー チェックをカスタマイズするには、次の方法があります。

  • ランタイム エラー レポート関数の記述 詳細については、「方法:ランタイム エラー レポート関数を記述する」を参照してください。

  • エラー メッセージ出力先のカスタマイズ

  • ランタイム チェック エラーに関する情報のクエリ

エラー メッセージ出力先のカスタマイズ

エラー レポートに _CrtDbgReportW を使用する場合は、_CrtSetReportMode を使用してエラー メッセージの出力先を指定できます。

カスタムのレポート関数を使用している場合、エラーとレポートの種類を関連付けるには、_RTC_SetErrorType を使用します。

ランタイム チェック情報のクエリ

_RTC_NumErrors は、ランタイム エラー チェックで検出されたエラーの種類の数を返します。 各エラーの簡単な説明を取得するには、0 ~ _RTC_NumErrors の戻り値をループし、各ループで _RTC_GetErrDesc に反復値を渡すことができます。 詳細については、「_RTC_NumErrors」と「_RTC_GetErrDesc」を参照してください。