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