storPortRegistryRead 函式 (storport.h)

StorPortRegistryRead 例程會讀取指定裝置和值的登錄數據。

語法

BOOLEAN StorPortRegistryRead(
  PVOID  HwDeviceExtension,
  PUCHAR ValueName,
  ULONG  Global,
  ULONG  Type,
  PUCHAR Buffer,
  PULONG BufferLength
);

參數

HwDeviceExtension

硬體裝置擴充功能的指標。 這是每個 HBA 儲存區域,埠驅動程式會代表迷你埠驅動程式配置和初始化。 迷你埠驅動程式通常會在此延伸模組中儲存 HBA 特定資訊,例如 HBA 的狀態和 HBA 的對應存取範圍。 迷你埠驅動程式會在迷你埠驅動程式呼叫 StorPortInitialize 之後立即提供此區域。 埠驅動程式會在移除裝置時釋放此記憶體。 迷你埠驅動程序必須在 IRQL PASSIVE_LEVEL呼叫此例程時執行。

ValueName

UCHAR 的指標,指定要讀取其內容的登錄值名稱。

Global

表示當非零時,埠驅動程式會在 Parameters\Device 子機碼下讀取 ValueName 所指定的登錄值內容。 [裝置金鑰] 底下的值會套用至系統中的所有適配卡。 當 Global 為零時,埠驅動程式會讀取 ValueName 在 Parameters\Device (d) 子機碼下所指定的登錄值內容,其中 (d) 是對應於特定適配卡埠號碼的十進位值。 在此情況下,擷取的數據是配接器特定的。

Type

表示登錄值的數據類型。 此參數必須具有下表中的其中一個值。

登錄值數據類型 意義
REG_NONE 未指定數據類型。
REG_SZ 表示 NULL 終止的 Unicode 字串。
REG_EXPAND_SZ 指出 NULL 終止的 Unicode 字串,其中包含必須展開才能取得完整字串的環境變數。 例如,路徑名稱可能會儲存為下列字串:“%USERPROFILE%\Application Data”。 在此範例中,必須展開環境變數USERPROFILE,才能取得實際的路徑名稱。
REG_BINARY 表示原始二進位數據。
REG_DWORD 表示32位雙字字值。
REG_DWORD_LITTLE_ENDIAN 以位元組尾順序表示32位雙字值。 這與REG_DWORD相同。
REG_DWORD_BIG_ENDIAN 以大到小的順序表示 32 位雙字值。
REG_LINK 表示包含符號連結的 Unicode 字串。
REG_MULTI_SZ 表示一系列的 NULL 終止字串。
REG_RESOURCE_LIST 指出登錄值包含儲存在 HKEY_LOCAL_MACHINE\HARDWARE\ResourceMap hive 底下的硬體資源清單,也稱為「硬體資源對應」。
REG_FULL_RESOURCE_DESCRIPTOR 指出登錄值包含儲存在 HKEY_LOCAL_MACHINE\HARDWARE\Description hive 下的硬體資源描述。
REG_RESOURCE_REQUIREMENTS_LIST 指出登錄值包含儲存在 HKEY_LOCAL_MACHINE\HARDWARE\ResourceMap 樹狀結構下的硬體資源需求清單。
REG_QWORD 表示登錄值包含64位數位。
REG_QWORD_LITTLE_ENDIAN 表示登錄值包含64位數位。 這與REG_QWORD數據類型相同。

Buffer

要報告所擷取登錄資訊之緩衝區的指標。

BufferLength

ULONG 的指標,其中包含所傳回登錄數據的大小,以位元組為單位。

傳回值

如果 ValueName 指向的數據成功轉換成 ASCII 並複製到緩衝區,StorPortRegistryRead 會傳回 Boolean 值 TRUE。 這個例程會在發生錯誤時傳回 FALSE

備註

如果 StorPortRegistryReadBufferLength 參數中的非零值傳回 FALSE,則傳遞的緩衝區太小,而 BufferLength 參數會反映應該使用的正確緩衝區大小。 如果例程傳回 FALSE ,且 BufferLength 參數設定為零,則會發生另一個錯誤。

此例程中使用的緩衝區是藉由呼叫 StorPortAllocateRegistryBuffer 來配置,並藉由呼叫 StorPortFreeRegistryBuffer 釋放。

規格需求

需求
目標平台 Universal
標頭 storport.h (包含 Storport.h)
程式庫 Storport.lib
IRQL PASSIVE_LEVEL
DDI 合規性規則 StorPortIrql (storport)

另請參閱

StorPortAllocateRegistryBuffer

StorPortFreeRegistryBuffer

StorPortInitialize