次の方法で共有


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

コールバック ルーチンを排他的に使用するためのプライベート コンテキスト データが含まれます。 コールバック ルーチンは、このメンバーを任意の値に設定できます。 通常、コールバック ルーチンを複数回呼び出す必要がある場合、ルーチンは、最初の呼び出し中にドライバー指定のバッファーを指すようにこのメンバーを設定します。 後続の呼び出し中に、コールバック ルーチンは、このバッファーの前の内容を読み取り、その内容を更新できます。 コールバック ルーチンの最初の呼び出しの前に、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 フラグを設定する必要がありますが、両方を設定する必要はありません。 コールバック ルーチンへのエントリでは、 フラグ は 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 に渡されたバグチェック パラメーターをコールバックに通知します。

注釈

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

要件

要件
Header wdm.h

こちらもご覧ください

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