コールバック関数PFN_WER_RUNTIME_EXCEPTION_DEBUGGER_LAUNCH (werapi.h)
Windows エラー報告 (WER) はこの関数を呼び出して、デバッガーの起動オプションと起動文字列をカスタマイズできるようにします。
PFN_WER_RUNTIME_EXCEPTION_DEBUGGER_LAUNCH型は、このコールバック関数へのポインターを定義します。 コールバック関数の名前として "OutOfProcessExceptionEventDebuggerLaunchCallback" を使用する必要があります。
構文
PFN_WER_RUNTIME_EXCEPTION_DEBUGGER_LAUNCH PfnWerRuntimeExceptionDebuggerLaunch;
HRESULT PfnWerRuntimeExceptionDebuggerLaunch(
[in] PVOID pContext,
[in] const PWER_RUNTIME_EXCEPTION_INFORMATION pExceptionInformation,
[out] PBOOL pbIsCustomDebugger,
[out] PWSTR pwszDebuggerLaunch,
[in, out] PDWORD pchDebuggerLaunch,
[out] PBOOL pbIsDebuggerAutolaunch
)
{...}
パラメーター
[in] pContext
例外ハンドラーを登録するために WerRegisterRuntimeExceptionModule 関数を呼び出したときに指定した任意のコンテキスト情報へのポインター。
[in] pExceptionInformation
例外情報を含む WER_RUNTIME_EXCEPTION_INFORMATION 構造体。
[out] pbIsCustomDebugger
pwszDebuggerLaunch パラメーターで指定されたカスタム デバッガーを使用してクラッシュをデバッグする場合は、TRUE に設定します。それ以外の場合は、既定のデバッガーを使用するには FALSE に設定します。 このパラメーターを FALSE に設定する場合は、 pwszDebuggerLaunch パラメーターを設定しないでください。
[out] pwszDebuggerLaunch
デバッガーの起動に使用するデバッガー起動文字列を指定するために使用する、呼び出し元によって割り当てられたバッファー。 起動文字列には、デバッガーへの完全なパスと引数を含める必要があります。 引数に複数の単語が含まれている場合は、引用符を使用して引数を区切ります。 デバッガー文字列は、既定の AeDebug デバッガー文字列と同じプロトコルに準拠している必要があります ( 「自動デバッグの構成」を参照してください)。 文字列には、クラッシュプロセス ID の場合は %ld、カスタム デバッガーがターゲットにアタッチされた後に通知されるイベント オブジェクトへのハンドルの場合は %ld という 2 つの書式設定指定子が含まれている必要があります (これらの指定子の説明については、「 事後デバッグの有効化」を参照してください)。 ただし、カスタム デバッガーでは、これらのパラメーターを無視することを選択できます。
[in, out] pchDebuggerLaunch
pwszDebuggerLaunch バッファーのサイズ (文字数)。
[out] pbIsDebuggerAutolaunch
WER でデバッガーをサイレント起動させる場合は 、TRUE に 設定します。それ以外の場合、デバッガーを起動する前に WER がユーザーに要求する場合は FALSE 。
戻り値
顧客デバッガーを使用しない場合でも、 S_OKを返します。 他のエラー コードを返した場合、WER は既定のクラッシュ レポート動作に戻ります。
解説
この関数は、例外ハンドラー DLL に実装する必要があります。
WER は、この関数を使用して、起動するデバッガーと、デバッガーを自動的に起動するか、デバッガーを起動する前にユーザーに問い合わせるかを決定します。 カスタム デバッガーを指定すると、既定の起動文字列がオーバーライドされます (AeDebug レジストリ キーには既定の起動文字列が含まれています)。
WER は、OutOfProcessExceptionEventCallback コールバック関数の pbOwnershipClaimed パラメーターを TRUE に設定した場合にのみ、このコールバック関数を呼び出します。
要件
サポートされている最小のクライアント | Windows 7 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2008 R2 [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | werapi.h |