共用方式為


AuxKlibEnumerateSystemFirmwareTables 函式 (aux_klib.h)

AuxKlibEnumerateSystemFirmwareTables 例程會列舉指定類型的所有系統韌體數據表。

語法

NTSTATUS AuxKlibEnumerateSystemFirmwareTables(
  [in]            ULONG  FirmwareTableProviderSignature,
  [out, optional] PVOID  FirmwareTableBuffer,
  [in]            ULONG  BufferLength,
  [out, optional] PULONG ReturnLength
);

參數

[in] FirmwareTableProviderSignature

要導向查詢之韌體數據表提供者的標識符。 此參數可以是下列其中一個值。

價值 意義
'ACPI' ACPI 韌體數據表提供者。
'FIRM' 原始韌體數據表提供者。
'RSMB' 原始SMBIOS韌體資料表提供者。

[out, optional] FirmwareTableBuffer

呼叫端配置的緩衝區指標,例程會寫入韌體數據表清單。 如果此參數為 NULL,則寫入 *ReturnLength 的值是所需的緩衝區大小。 如需此緩衝區內容的詳細資訊,請參閱一節。

[in] BufferLength

FirmwareTableBuffer 所指向之緩衝區的大小,以位元組為單位,

[out, optional] ReturnLength

例程將寫入至 FirmwareTableBuffer 所指向之緩衝區之數據位元組數目的位置指標,

傳回值

如果呼叫成功,AuxKlibEnumerateSystemFirmwareTables 會傳回STATUS_SUCCESS。 可能的傳回值包括下列錯誤碼。

傳回碼 描述
STATUS_INVALID_PARAMETER
已將無效的參數提供給例程。
STATUS_BUFFER_TOO_SMALL
呼叫端配置的緩衝區太小,但所需的緩衝區大小已寫入 ReturnLength 輸出參數。

言論

如果呼叫成功,此例程會將一或多個數據表標識符的陣列寫入 FirmwareTableBuffer 參數所指向的緩衝區。 此陣列的每個元素都是 DWORD 值,可識別 FirmwareTableProviderSignature 參數所指定提供者所提供的韌體數據表。

原始SMBIOS資料表提供者 ('RSMB') 目前會傳回單一數據表標識碼,0x00000000。 這會對應至原始SMBIOS韌體數據表。

原始韌體數據表提供者 (『FIRM』) 會擷取 DWORD 資料表標識碼的清單。 每個標識碼都會對應到實體位址範圍的開頭。 目前,此提供者會傳回兩個標識符,0x000C0000和0x000E0000。 這些標識符分別代表從0x000C0000到0x000DFFFF和從0x000E0000到0x000FFFFF的實體記憶體。

ACPI 資料表提供者 ('ACPI') 會傳回 DWORD 數據表標識符的清單。 每個傳回的標識碼都會對應至系統 ACPI 命名空間中目前 ACPI 命名空間中 ACPI 數據表 DESCRIPTION_HEADER 結構的 Signature 字段。 如需此結構的詳細資訊,請參閱 進階設定和 Power Interface 網站的進階設定和 Power Interface 規格。

針對 ACPI,如果系統韌體包含多個具有相同名稱的數據表,AuxKlibEnumerateSystemFirmwareTables 列舉所有數據表。 不過,AuxKlibGetSystemFirmwareTable 只會擷取清單中具有此名稱的第一個數據表。

AuxKlibEnumerateSystemFirmwareTables 是 Win32 EnumSystemFirmwareTables 函式的核心模式對等專案。

驅動程式必須先呼叫 AuxKlibInitialize,才能呼叫 AuxKlibEnumerateSystemFirmwareTable

AuxKlibEnumerateSystemFirmwareTables 定義於適用於 Windows 8 和更新版本的 WDK 中Aux_klib.h 頭檔中。 若要使用此例程,驅動程式應該連結至 Windows 8 和更新版本 Windows WDK 中包含的 Aux_klib.lib 版本。 AuxKlibEnumerateSystemFirmwareTables 這些版本的 WDK 可用於從 Windows Vista 開始的 Windows 版本中。

要求

要求 價值
最低支援的用戶端 從 Windows Vista 開始支援。
目標平臺 普遍
標頭 aux_klib.h (包括 Aux_klib.h)
連結庫 Aux_Klib.lib
IRQL PASSIVE_LEVEL

另請參閱

AuxKlibGetSystemFirmwareTable

AuxKlibInitialize

EnumSystemFirmwareTables