共用方式為


WHEA_ERROR_PACKET_V1 結構 (ntddk.h)

WHEA_ERROR_PACKET_V1 結構描述由低階硬體錯誤處理程式傳遞至作業系統的硬體錯誤數據, (LLHEH) 。

Windows Server 2008 和 Windows Vista SP1 支援 WHEA_ERROR_PACKET_V1 結構。

針對 Windows 7 和更新版本的 Windows,請使用 WHEA_ERROR_PACKET_V2 結構。

語法

typedef struct _WHEA_ERROR_PACKET_V1 {
  ULONG                   Signature;
  WHEA_ERROR_PACKET_FLAGS Flags;
  ULONG                   Size;
  ULONG                   RawDataLength;
  ULONGLONG               Reserved1;
  ULONGLONG               Context;
  WHEA_ERROR_TYPE         ErrorType;
  WHEA_ERROR_SEVERITY     ErrorSeverity;
  ULONG                   ErrorSourceId;
  WHEA_ERROR_SOURCE_TYPE  ErrorSourceType;
  ULONG                   Reserved2;
  ULONG                   Version;
  ULONGLONG               Cpu;
  union {
    WHEA_PROCESSOR_GENERIC_ERROR_SECTION ProcessorError;
    WHEA_MEMORY_ERROR_SECTION            MemoryError;
    WHEA_NMI_ERROR_SECTION               NmiError;
    WHEA_PCIEXPRESS_ERROR_SECTION        PciExpressError;
    WHEA_PCIXBUS_ERROR_SECTION           PciXBusError;
    WHEA_PCIXDEVICE_ERROR_SECTION        PciXDeviceError;
    WHEA_PMEM_ERROR_SECTION              PmemError;
  } u;
  WHEA_RAW_DATA_FORMAT    RawDataFormat;
  ULONG                   RawDataOffset;
  UCHAR                   RawData[1];
} WHEA_ERROR_PACKET_V1, *PWHEA_ERROR_PACKET_V1, WHEA_ERROR_PACKET, *PWHEA_ERROR_PACKET;

成員

Signature

硬體錯誤封包的簽章。 此成員包含值WHEA_ERROR_PACKET_V1_SIGNATURE。

Flags

描述錯誤條件 的WHEA_ERROR_PACKET_FLAGS 等位。

Size

硬體錯誤封包的大小,以位元組為單位,包括原始數據。

RawDataLength

RawData 成員中包含的數據長度,以位元組為單位。

Reserved1

保留供系統使用。

Context

保留供系統使用。

ErrorType

WHEA_ERROR_TYPE型別值,指出回報硬體錯誤的硬體元件類型。

ErrorSeverity

WHEA_ERROR_SEVERITY型別值,指出錯誤狀況的嚴重性。

ErrorSourceId

回報硬體錯誤之錯誤來源的識別碼。

ErrorSourceType

WHEA_ERROR_SOURCE_TYPE型別值,指出回報硬體錯誤的錯誤來源類型。

Reserved2

保留供系統使用。

Version

WHEA_ERROR_PACKET_V1 結構的版本。 這個成員包含值WHEA_ERROR_PKT_V1VERSION。

Cpu

保留供系統使用。

u

由下列成員組成的等位:

u.ProcessorError

描述處理器錯誤數據的 WHEA_PROCESSOR_GENERIC_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypeProcessor 時,才會使用此成員。

u.MemoryError

描述記憶體錯誤數據的 WHEA_MEMORY_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypeMemory 時,才會使用此成員。

u.NmiError

描述 NMI) 錯誤資料 (不可遮罩中斷的 WHEA_NMI_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypeNMI 時,才會使用此成員。

u.PciExpressError

描述PCI Express (PCIe) 錯誤數據的 WHEA_PCIEXPRESS_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypePCIExpress 時,才會使用此成員。

u.PciXBusError

描述PCI或PCI-X總線錯誤數據的 WHEA_PCIXBUS_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypePCIXBus 時,才會使用此成員。

u.PciXDeviceError

描述PCI或PCI-X裝置錯誤資料的 WHEA_PCIXDEVICE_ERROR_SECTION 結構。 只有當 ErrorType 成員設定為 WheaErrTypePCIXDevice 時,才會使用此成員。

u.PmemError

RawDataFormat

WHEA_RAW_DATA_FORMAT型別值,指出RawData數據緩衝區中包含的硬體錯誤資訊格式。

RawDataOffset

從RawData數據緩衝區開頭的位移,PSHED 外掛程式可以將補充平臺特定錯誤資訊新增至硬體錯誤封包。 可新增至硬體錯誤封包的增補信息數量受限於 Size 成員中指定的封包大小總計。

RawData[1]

可變大小的數據緩衝區,其中包含來自錯誤來源狀態緩存器的原始硬體錯誤資訊。 硬體錯誤數據的格式是由 RawDataFormat 成員所指定。

備註

WHEA_ERROR_PACKET_V1 結構可用來報告 Windows Server 2008 和 Windows Vista SP1 中的硬體錯誤。

如果您的 平臺特定硬體錯誤驅動程式 (PSHED) 外掛程式 在任何 WHEA 相容的 Windows 版本上執行,您可以遵循下列步驟來檢查WHEA_ERROR_PACKET版本:

  1. 如果WHEA_ERROR_PACKET的 Signature 成員等於WHEA_ERROR_PACKET_V1_SIGNATURE,程式代碼就會在舊版 Windows 上執行,而錯誤封包的格式會格式化為 WHEA_ERROR_PACKET_V1 結構。

  2. 如果WHEA_ERROR_PACKET的 Signature 成員等於WHEA_ERROR_PACKET_V2_SIGNATURE,程式代碼就會在較新版本的 Windows 上執行,而錯誤封包的格式會格式化為 WHEA_ERROR_PACKET_V2 結構。

LLHEH 會在回報硬體錯誤時,將 WHEA_ERROR_PACKET_V1 結構傳遞給操作系統。 此硬體錯誤封包包含來自錯誤來源錯誤狀態快取器的原始硬體錯誤數據。

WHEA_ERROR_PACKET_V1 結構描述 錯誤記錄的硬體錯誤封包錯誤區段中所包含的錯誤數據。 只有在描述該錯誤記錄之錯誤記錄區段的其中一個WHEA_ERROR_RECORD_SECTION_DESCRIPTOR結構的 SectionType 成員包含WHEA_PACKET_SECTION_GUID時,錯誤記錄才會包含硬體錯誤封包錯誤區段。

規格需求

需求
最低支援的用戶端 Windows Server 2008 和 Windows Vista SP1 支援。
標頭 ntddk.h (包含 Ntddk.h)

另請參閱

平臺特定硬體錯誤驅動程式 (PSHED) 外掛程式

WHEA_ERROR_PACKET_FLAGS

WHEA_ERROR_PACKET_V2

WHEA_ERROR_RECORD_SECTION_DESCRIPTOR

WHEA_ERROR_SEVERITY

WHEA_ERROR_SOURCE_TYPE

WHEA_ERROR_TYPE

WHEA_MEMORY_ERROR_SECTION

WHEA_NMI_ERROR_SECTION

WHEA_PCIEXPRESS_ERROR_SECTION

WHEA_PCIXBUS_ERROR_SECTION

WHEA_PCIXDEVICE_ERROR_SECTION

WHEA_PROCESSOR_GENERIC_ERROR_SECTION

WHEA_RAW_DATA_FORMAT