MINIDUMP_CALLBACK_TYPE列挙 (minidumpapiset.h)

MiniDumpCallback 関数によって返される情報の種類を識別します。 すべてのメモリエラーがコールバックを引き起こすわけではありません。たとえば、障害がスタック内にある場合、障害は回復不能と見なされ、ミニダンプは失敗します。

構文

typedef enum _MINIDUMP_CALLBACK_TYPE {
  ModuleCallback,
  ThreadCallback,
  ThreadExCallback,
  IncludeThreadCallback,
  IncludeModuleCallback,
  MemoryCallback,
  CancelCallback,
  WriteKernelMinidumpCallback,
  KernelMinidumpStatusCallback,
  RemoveMemoryCallback,
  IncludeVmRegionCallback,
  IoStartCallback,
  IoWriteAllCallback,
  IoFinishCallback,
  ReadMemoryFailureCallback,
  SecondaryFlagsCallback,
  IsProcessSnapshotCallback,
  VmStartCallback,
  VmQueryCallback,
  VmPreReadCallback,
  VmPostReadCallback
} MINIDUMP_CALLBACK_TYPE;

定数

 
ModuleCallback
コールバック関数はモジュール情報を返します。
ThreadCallback
コールバック関数はスレッド情報を返します。
ThreadExCallback
コールバック関数は、拡張スレッド情報を返します。
IncludeThreadCallback
コールバック関数は、含めるスレッドを示します。 これは、ミニダンプ ライブラリとして呼び出されます。
情報が収集された後ではなく、プロセス内のスレッドを列挙する
ThreadCallback または ThreadExCallback。 に対して呼び出されます。
各スレッド。 コールバック関数が FALSE を返す場合、現在のスレッドは除外されます。
これにより、呼び出し元は、中断することなく、プロセス内のスレッドのサブセットの情報を取得できます
関心のないスレッド。 または、ThreadWriteFlags を変更することもできます。
MINIDUMP_CALLBACK_OUTPUTのメンバー
構造体を 作成し、TRUE を 返して、 の不要な情報を収集しないようにします。
トリガーされる可能性があります。
IncludeModuleCallback
コールバック関数は、含めるモジュールを示します。 コールバック関数は、 として呼び出されます。
minidump ライブラリは、情報が収集された後ではなく、プロセス内のモジュールを列挙しています。
ModuleCallback を使用しています。 モジュールごとに呼び出されます。 コールバック関数の場合
FALSE を返します。現在のモジュールは除外されます。 または、
の ModuleWriteFlags メンバー
MINIDUMP_CALLBACK_OUTPUT 構造と
は、モジュールの不要な情報を収集しないように TRUE を返します。
MemoryCallback
コールバック関数は、ダンプに含めるメモリの領域を返します。 コールバックは呼び出されます
MiniDumpWithFullMemory フラグなしで生成されたダンプの場合。 コールバック関数がを返す場合
FALSE またはサイズ 0 のリージョンでは、コールバックは再び呼び出されません。


DbgHelp 6.1 以前: この値はサポートされていません。
CancelCallback
コールバック関数はキャンセル情報を返します。


DbgHelp 6.1 以前: この値はサポートされていません。
WriteKernelMinidumpCallback
ユーザー モードのミニダンプが正常に完了しました。 カーネル モードのミニダンプを開始するには、コールバック
は TRUE を返し、 の Handle メンバーを設定する必要があります。
MINIDUMP_CALLBACK_OUTPUT 構造体。


DbgHelp 6.1 以前: この値はサポートされていません。
KernelMinidumpStatusCallback
コールバック関数は、カーネル ミニダンプの状態情報を返します。


DbgHelp 6.1 以前: この値はサポートされていません。
RemoveMemoryCallback
コールバック関数は、ダンプから除外されるメモリの領域を返します。 コールバックは呼び出されます
MiniDumpWithFullMemory フラグなしで生成されたダンプの場合。 コールバックが
関数は FALSE またはサイズ 0 の領域を返します。コールバックは再び呼び出されません。


DbgHelp 6.3 以前: この値はサポートされていません。
IncludeVmRegionCallback
コールバック関数は、仮想メモリ領域に関する情報を返します。 それぞれ 2 回呼び出されます
フルメモリ書き込みパス中のリージョン。 の VmRegion メンバー
MINIDUMP_CALLBACK_OUTPUT 構造体
には、現在のメモリ領域が含まれています。 リージョンのベース アドレスとサイズは、新しい
region は元のリージョンのサブセットのままです。他のメンバーに対する変更は無視されます。 コールバックがを返す場合
TRUE を指定 し、 の Continue メンバーを設定します
MINIDUMP_CALLBACK_OUTPUT
TRUE の場合、ミニダンプ ライブラリでは、 で指定されたリージョンが使用されます
書き込むリージョンとしての VmRegion。 コールバックがを返す場合
FALSE または ContinueFALSE の場合は、
コールバックは、追加のメモリ領域では呼び出されません。


DbgHelp 6.4 以前: この値はサポートされていません。
IoStartCallback
コールバック関数は、呼び出し元が代替 I/O ルーチンを提供することを示します。 コールバックが
は TRUE を返し、 の Status メンバーを設定します
MINIDUMP_CALLBACK_OUTPUT
S_FALSE、ミニダンプ ライブラリはコールバックを介してすべての I/O を送信します。 呼び出し元は、次の操作を
は、データの各部分に対して IoWriteAllCallback コールバックを受け取ります。


DbgHelp 6.4 以前: この値はサポートされていません。
IoWriteAllCallback
コールバックは、要求されたすべてのバイトを書き込むか、失敗する必要があります。 の Io メンバー
構造体MINIDUMP_CALLBACK_INPUT 含まれています
要求。 書き込み操作が失敗した場合、コールバックは FALSE を返す必要があります。 取得するオブジェクトで
書き込み操作が成功すると、コールバックは TRUE を 返し、
の状態 メンバー
MINIDUMP_CALLBACK_OUTPUT
S_OK。 呼び出し元は IoFinishCallback コールバックを受け取ります
I/O が完了したとき。


DbgHelp 6.4 以前: この値はサポートされていません。
IoFinishCallback
コールバックは I/O 完了情報を返します。 コールバックが FALSE または を返す場合
Status メンバーが設定されない
MINIDUMP_CALLBACK_OUTPUT
S_OK、ミニダンプ ライブラリは、ミニダンプ書き込み操作が失敗したことを前提としています。


DbgHelp 6.4 以前: この値はサポートされていません。
ReadMemoryFailureCallback
メモリの読み取りエラーが発生しました。 コールバックが TRUE を返し、 を設定する場合
Status メンバー
MINIDUMP_CALLBACK_OUTPUT
S_OK、メモリエラーは無視され、ブロックはミニダンプから省略されます。 それ以外の場合は、この
失敗すると、ミニダンプへの書き込みに失敗します。


DbgHelp 6.4 以前: この値はサポートされていません。
SecondaryFlagsCallback
コールバックはセカンダリ情報を返します。


DbgHelp 6.5 以前: この値はサポートされていません。
IsProcessSnapshotCallback
コールバック関数は、ターゲットがプロセスかスナップショットかを示します。

DbgHelp 6.2 以前: この値はサポートされていません。
VmStartCallback
コールバック関数は、呼び出し先が VmQueryCallback、VmPreReadCallback、VmPostReadCallback などの仮想メモリ コールバックをサポートし、受け入れるかどうかを示します。

戻り値S_FALSEは、仮想メモリ コールバックがサポートされていることを意味します。 S_OK の値は、仮想メモリ コールバックがサポートされていないことを意味します。

DbgHelp 6.2 以前: この値はサポートされていません。
VmQueryCallback
ターゲットから仮想アドレス メモリ情報を収集するために、スナップショット ターゲットに対してコールバック関数が呼び出されます。
コールバックは、 VmStartCallback が S_FALSE の値を返した場合にのみ呼び出されます。


DbgHelp 6.2 以前: この値はサポートされていません。
VmPreReadCallback
コールバック関数は、ReadVirtual 操作ごとに送信されます。 これらの読み取りは、ダンプに追加されるメモリ ブロックに限定されません。 エンジンは、プロセス環境ブロック (PEB)、スレッド環境ブロック (TEB)、ローダー データ、アンロードされたモジュール トレース、およびその他のブロックにもアクセスします。 これらのブロックがダンプに含まれていない場合でも、ターゲットから読み取られ、仮想メモリ コールバックがそれぞれに対して開始されます。 コールバックは、 VmStartCallback がS_FALSE返された場合にのみ呼び出されます。

DbgHelp 6.2 以前: この値はサポートされていません。
VmPostReadCallback
コールバック関数を使用すると、呼び出し先は、キャッシュなどの他のソースからのデータを使用してバッファーの内容を変更したり、難読化を実行したりできます。 この時点のバッファーは、 VmPreReadCallbackReadProcessMemory によって完全または部分的に塗りつぶされます。 コールバックは、 VmStartCallback がS_FALSE返された場合にのみ呼び出されます。

DbgHelp 6.2 以前: この値はサポートされていません。

要件

要件
Header minidumpapiset.h (DbgHelp.h を含む)
再頒布可能パッケージ DbgHelp.dll 5.1 以降

こちらもご覧ください

MINIDUMP_CALLBACK_INPUT

MiniDumpCallback