Share via


WheaFindNextErrorRecordSection 関数 (ntddk.h)

WheaFindNextErrorRecordSection 関数を使用すると、呼び出し元は WHEA エラー レコード内の WHEA エラー レコード セクションを反復的に調べることができます。 各エラー レコード セクションは、 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 構造として書式設定されます。

構文

NTSTATUS WheaFindNextErrorRecordSection(
  [in]            PWHEA_ERROR_RECORD                    Record,
  [in, out]       ULONG                                 *Context,
  [out]           PWHEA_ERROR_RECORD_SECTION_DESCRIPTOR *SectionDescriptor,
  [out, optional] PVOID                                 *SectionData
);

パラメーター

[in] Record

WHEA_ERROR_RECORD構造体として書式設定された WHEA エラー レコードへのポインター。

[in, out] Context

検索の現在の状態を維持する ULONG 変数へのポインター。

この変数は、 WheaFindNextErrorRecordSection 関数の最初の呼び出しの前に 0 に初期化する必要があります。

[out] SectionDescriptor

WHEA_ERROR_RECORD_SECTION_DESCRIPTOR ポインターのアドレス。

WheaFindNextErrorRecordSection 関数が、指定した WHEA エラー レコード内の次のWHEA_ERROR_RECORD_SECTION_DESCRIPTOR構造体を見つけた場合、この関数は SectionDescriptor パラメーターを、指定した WHEA エラー レコード内のその構造体のアドレスに設定します。

[out, optional] SectionData

PVOID ポインターのアドレス。

WheaFindNextErrorRecordSection 関数が、指定した WHEA エラー レコード内で次のWHEA_ERROR_RECORD_SECTION_DESCRIPTOR構造を見つけた場合、この関数は SectionData パラメーターを、その記述子に関連付けられているハードウェア エラー データのアドレスに設定します。

このパラメーターは省略可能であり、エラー レコード セクション データへのポインターが必要ない場合は NULL に設定する必要があります。

戻り値

WheaFindNextErrorRecordSection は、次の NTSTATUS コードのいずれかを返します。

リターン コード 説明
STATUS_SUCCESS 次の WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 構造が見つかりました。
STATUS_NOT_FOUND のWHEA_ERROR_RECORD_SECTION_DESCRIPTOR 構造体が見つかりませんでした。
STATUS_INVALID_PARAMETER RecordSectionType、または SectionDescriptor パラメーターが NULL に設定されているか、Record パラメーターを介して参照されるWHEA_ERROR_RECORDデータが無効です。

注釈

Context パラメーターが 0 に設定されている場合、WheaFindNextErrorRecordSection は WHEA エラー レコード内の最初のWHEA_ERROR_RECORD_SECTION_DESCRIPTOR構造体へのポインターを返します。 WheaFindNextErrorRecordSection では、SectionDescriptor パラメーターを介して返されるWHEA_ERROR_RECORD_SECTION_DESCRIPTORに関連する状態情報を使用して Context パラメーターも更新されます。

WheaFindNextErrorRecordSection の後続の呼び出しで、この関数は WHEA エラー レコード内の次のWHEA_ERROR_RECORD_SECTION_DESCRIPTOR構造体 (使用可能な場合) を返します。 関数が次のWHEA_ERROR_RECORD_SECTION_DESCRIPTOR構造体を見つけると、 Context パラメーターが更新されます。 それ以外の場合、関数はSTATUS_NOT_FOUNDを返します。

指定した WHEA エラー レコード内の最初のWHEA_ERROR_RECORD_SECTION_DESCRIPTORを見つけるには、呼び出し元は、呼び出しの前に、Context パラメーターでアドレスが渡される変数を 0 に設定する必要があります。 その後、 WheaFindNextErrorRecordSection の後続の呼び出しによって次のWHEA_ERROR_RECORD_SECTION_DESCRIPTORを検索するときに、呼び出し元は変数の値を変更しないでください。

さらに、 WheaFindNextErrorRecordSection がSTATUS_SUCCESSを返し、呼び出し元が SectionData パラメーターを PVOID ポインター変数のアドレスに設定した場合、関数は、指定したWHEA_ERROR_RECORD_SECTION_DESCRIPTOR構造体に関連付けられているハードウェア エラー データのアドレスを使用してパラメーター 更新します。

ハードウェア エラー データの形式は、SectionDescriptor パラメーターを介して参照されるWHEA_ERROR_RECORD_SECTION_DESCRIPTOR構造体の SectionType メンバーによって異なります。 たとえば、 SectionType メンバーの値がPROCESSOR_GENERIC_ERROR_SECTION_GUID場合、ハードウェア エラー データは WHEA_PROCESSOR_GENERIC_ERROR_SECTION 構造として書式設定されます。

要件

要件
サポートされている最小のクライアント Windows 7 以降のバージョンの Windows でサポートされています。
対象プラットフォーム デスクトップ
Header ntddk.h (Ntddk.h を含む)
IRQL IRQL <= DISPATCH_LEVEL

こちらもご覧ください

エラー レコード

WHEA_ERROR_PACKET

WHEA_ERROR_RECORD

WHEA_ERROR_RECORD_SECTION_DESCRIPTOR