WheaFindErrorRecordSection 函数在 WHEA 中搜索指定的 Windows 硬件错误体系结构(WHEA)错误记录部分,错误记录。 错误记录部分的格式设置为 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 结构。
语法
NTSTATUS WheaFindErrorRecordSection(
[in] PWHEA_ERROR_RECORD Record,
[in] const GUID *SectionType,
[out] PWHEA_ERROR_RECORD_SECTION_DESCRIPTOR *SectionDescriptor,
[out, optional] PVOID *SectionData
);
参数
[in] Record
指向 WHEA 错误记录的指针, 格式设置为 WHEA_ERROR_RECORD 结构。
[in] SectionType
一个 GUID,指定要位于指定 WHEA 中的 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 结构 错误记录。
[out] SectionDescriptor
WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 指针的地址。
如果 WheaFindErrorRecordSection 函数找到指定的WHEA_ERROR_RECORD_SECTION_DESCRIPTOR结构,该函数会将 SectionDescriptor 参数设置为指定 WHEA 错误记录中该结构的地址。
[out, optional] SectionData
PVOID 指针的地址。
如果 WheaFindErrorRecordSection 函数找到指定的 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 结构,则函数会将 SectionData 参数设置为与指定 WHEA 错误记录中与该描述符关联的硬件错误数据的地址。
此参数是可选的,如果不需要指向硬件错误数据的指针,则必须设置为 NULL。
返回值
WheaFindErrorRecordSection 返回以下 NTSTATUS 代码之一:
| 返回代码 | 描述 |
|---|---|
| STATUS_SUCCESS | 找到指定的 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 结构。 |
| STATUS_NOT_FOUND | 找不到指定的 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 结构。 |
| STATUS_INVALID_PARAMETER | Record、SectionType、 或 SectionDescriptor 参数都设置为 NULL,或者 WHEA 错误记录 通过 Record 参数引用。 |
言论
如果 WheaFindErrorRecordSection 返回STATUS_SUCCESS,则它已找到通过 Guid 参数指定的 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 结构。 WheaFindErrorRecordSection 将 SectionDescriptor 参数设置为 WHEA_ERROR_RECORD_SECTION_DESCRIPTOR 结构的地址。
此外,如果 WheaFindErrorRecordSection 返回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 中受支持。 |
| 目标平台 | 桌面 |
| 标头 | ntddk.h (包括 Ntddk.h) |
| IRQL | IRQL <=DISPATCH_LEVEL |