次の方法で共有


KBUGCHECK_SECONDARY_DUMP_DATA_EX構造体 (wdm.h)

KBUGCHECK_SECONDARY_DUMP_DATA_EX 構造体は、コールバック ルーチンによってクラッシュ ダンプ ファイルに書き込まれるマルチパート データ KBUGCHECK_REASON_CALLBACK_ROUTINE 記述します。

構文

typedef struct _KBUGCHECK_SECONDARY_DUMP_DATA_EX {
  PVOID     InBuffer;
  ULONG     InBufferLength;
  ULONG     MaximumAllowed;
  GUID      Guid;
  PVOID     OutBuffer;
  ULONG     OutBufferLength;
  PVOID     Context;
  ULONG     Flags;
  ULONG     DumpType;
  ULONG     BugCheckCode;
  ULONG_PTR BugCheckParameter1;
  ULONG_PTR BugCheckParameter2;
  ULONG_PTR BugCheckParameter3;
  ULONG_PTR BugCheckParameter4;
} KBUGCHECK_SECONDARY_DUMP_DATA_EX, *PKBUGCHECK_SECONDARY_DUMP_DATA_EX;

メンバーズ

InBuffer

システムによって割り当てられるバッファーへのポインター。

InBufferLength

InBuffer メンバーによって指定されたバッファーのサイズをバイト単位で指定します。

MaximumAllowed

KBUGCHECK_REASON_CALLBACK_ROUTINE ルーチンがクラッシュ ダンプ ファイルに書き込むことができるデータの最大量を指定します。

Guid

ドライバーのクラッシュ ダンプ データを識別する GUID を指定します。 (ドライバーは、クラッシュ ダンプ データをマークするために一意の GUID を使用する必要があります。 GuidGen.exe ツールを使用して、ドライバーの GUID を生成します。

OutBuffer

ドライバーがクラッシュ ダンプ データを書き込むバッファーへのポインター、または NULL します。

OutBufferLength

OutBuffer メンバーによって指定されたバッファーのサイズをバイト単位で指定します。

Context

コールバック ルーチンを排他的に使用するためのプライベート コンテキスト データが含まれています。 コールバック ルーチンは、このメンバーを任意の値に設定できます。 通常、コールバック ルーチンを複数回呼び出す必要がある場合、ルーチンは、最初の呼び出し中にドライバーが提供するバッファーを指すこのメンバーを設定します。 後続の呼び出し中に、コールバック ルーチンは、このバッファーの前の内容を読み取り、その内容を更新できます。 コールバック ルーチンの最初の呼び出しの前に、コンテキストは NULL です。

Flags

追加ページ要求を記述するフラグが含まれています。 コールバック ルーチンは、このメンバーの値を設定する必要があります。 このメンバーを、次のフラグ ビットの 1 つ以上のビットごとの OR に設定します。

KB_ADD_PAGES_FLAG_VIRTUAL_ADDRESS

Address メンバーに仮想アドレスが含まれていることを示します。

KB_ADD_PAGES_FLAG_PHYSICAL_ADDRESS

Address メンバーに物理アドレスが含まれていることを示します。

KB_ADD_PAGES_FLAG_ADDITIONAL_RANGES_EXIST

コールバック ルーチンが、ページを追加できるように、再度呼び出されるように要求することを示します。

コールバック ルーチンは、KB_ADD_PAGES_FLAG_VIRTUAL_ADDRESS フラグまたは KB_ADD_PAGES_FLAG_PHYSICAL_ADDRESS フラグを設定する必要がありますが、両方を設定する必要はありません。 コールバック ルーチンへのエントリでは、Flags は 0 に初期化されます。

DumpType

次のいずれかのダンプの種類。

    DUMP_TYPE_INVALID           = -1,
    DUMP_TYPE_UNKNOWN           = 0,
    DUMP_TYPE_FULL              = 1,
    DUMP_TYPE_SUMMARY           = 2,
    DUMP_TYPE_HEADER            = 3,
    DUMP_TYPE_TRIAGE            = 4,
    DUMP_TYPE_BITMAP_FULL       = 5,
    DUMP_TYPE_BITMAP_KERNEL     = 6,
    DUMP_TYPE_AUTOMATIC         = 7

BugCheckCode

バグ チェックの理由を指定するバグ チェック コードが含まれています。 コールバック ルーチンは、この情報を使用して、クラッシュ ダンプ ファイルにページを追加するかどうかを決定できます。 バグ チェック コードの完全な一覧については、WDK に含まれている Bugcodes.h ヘッダー ファイルを参照してください。

BugCheckParameter1

バグ チェック パラメーター 1。 バグ チェック パラメーターは、KeBugcheckEx に渡されたバグチェック パラメーターをコールバックに通知します。

BugCheckParameter2

バグ チェック パラメーター 2。 バグ チェック パラメーターは、KeBugcheckEx に渡されたバグチェック パラメーターをコールバックに通知します。

BugCheckParameter3

バグ チェック パラメーター 3。 バグ チェック パラメーターは、KeBugcheckEx に渡されたバグチェック パラメーターをコールバックに通知します。

BugCheckParameter4

バグ チェック パラメーター 4。 バグ チェック パラメーターは、KeBugcheckEx に渡されたバグチェック パラメーターをコールバックに通知します。

備考

バグ チェック コールバック ルーチンの詳細については、「バグ チェック コールバック ルーチンの作成」を参照してください。

必要条件

要件 価値
ヘッダー wdm.h

関連項目

バグ チェック コールバック ルーチンの を記述する KBUGCHECK_REASON_CALLBACK_ROUTINE