CDebugReportHook::CDebugReportHookProc
更新 : 2007 年 11 月
C ランタイム デバッグのレポート プロセスにフックするカスタムのレポート関数です。
static int __cdecl CDebugReportHookProc(
int reportType,
char* message,
int* returnValue
) throw( );
パラメータ
reportType
レポートの種類 (_CRT_WARN、_CRT_ERROR、または _CRT_ASSERT)。message
メッセージ文字列。returnValue
_CrtDbgReport が返す値。
戻り値
以降のレポートが必要ないように、フック関数でメッセージを完全に処理する場合は、FALSE を返します。_CrtDbgReport が通常の方法でメッセージをレポートする必要がある場合は、TRUE を返します。
解説
レポート関数は、名前付きパイプを開いて、他方のプロセスとの通信を試みます。パイプがビジー状態の場合、レポート関数は、パイプが解放されるまで、またはタイムアウト時間が経過するまで待機します。タイムアウトの時間は、コンストラクタによって、または CDebugReportHook::SetTimeout の呼び出しによって設定できます。
この関数のコードは、呼び出しスレッドのセキュリティ コンテキスト内で実行されます。つまり、この関数の実行中は偽装が無効になります。
必要条件
ヘッダー : atlutil.h