NdisOpenConfigurationKeyByIndex 函式 (ndis.h)

NdisOpenConfigurationKeyByIndex 函式會開啟由呼叫端提供的句柄所指定之已開啟登錄機碼的子機碼。

語法

void NdisOpenConfigurationKeyByIndex(
  [out] PNDIS_STATUS Status,
  [in]  NDIS_HANDLE  ConfigurationHandle,
  [in]  ULONG        Index,
  [out] PNDIS_STRING KeyName,
  [out] PNDIS_HANDLE KeyHandle
);

參數

[out] Status

呼叫端提供之變數的指標,在此變數中,此函式會傳回其嘗試開啟指定登錄機碼的狀態。 可能的傳回值為下列其中一項:

NDIS_STATUS_SUCCESS

NDIS 已初始化為 KeyNameIndex 所指定的子機碼。

NDIS_STATUS_FAILURE

無法開啟金鑰。

[in] ConfigurationHandle

要開啟子機碼之登錄機碼的句柄。 一般而言, ConfigurationHandle 會由 傳回 NdisOpenConfigurationEx 函 式。

[in] Index

要開啟之子機碼的索引。 這個以零起始的值會指定要在已以 ConfigurationHandle 開啟的索引鍵底下開啟的子機碼。

[out] KeyName

NDIS_STRING類型的指標,其中包含呼叫端提供的緩衝區,在此緩衝區中,此函式會傳回系統默認字元集中的計數位符串。 如果呼叫成功,此字串會指定已開啟之子機碼的名稱。 對於 Microsoft Windows 2000 和更新版本的驅動程式,此字串包含 Unicode 字元。 也就是說,對於 Windows 2000 和更新版本,NDIS 會將NDIS_STRING類型定義為 UNICODE_STRING 類型。

[out] KeyHandle

呼叫端所提供變數的指標,如果呼叫成功,此函式會傳回開啟之子機碼的句柄。

傳回值

備註

NdisOpenConfigurationKeyByIndex 可讓驅動程式存取其安裝檔案儲存在登錄子機碼中的組態資訊。

請注意,傳入至 NdisOpenConfigurationKeyByIndexConfigurationHandle 可以是呼叫端已開啟之登錄機碼的任何有效句柄。 NdisOpenConfigurationKeyByIndex 會傳回相對於任何有效子機碼的組態資訊
ConfigurationHandle

由於 NdisOpenConfigurationKeyByIndex 會透過索引參考子機碼,因此驅動程式不需要指定子機碼名稱。 驅動程式可以在遞增索引之後重複呼叫 NdisOpenConfigurationKeyIndex ,以排序一組登錄子機碼,直到函式傳回NDIS_STATUS_FAILURE為止,藉此表示沒有其他子機碼可供開啟。

在驅動程式取用且可能修改儲存在登錄中的組態信息之後,它必須呼叫 NdisCloseConfiguration 函式來釋放從 NdisOpenConfigurationKeyByIndex 取得的句柄。 NdisCloseConfiguration 也會釋放為驅動程式呼叫 NdisReadConfigurationNdisReadNetworkAddressNdisWriteConfiguration 函式配置給 NdisOpenConfigurationKeyByIndex 傳回之 SubKeyHandle 的任何暫存記憶體。

規格需求

需求
最低支援的用戶端 支援 NDIS 6.0 和 NDIS 5.1 驅動程式, (請參閱 Windows Vista 中的 NdisOpenConfigurationKeyByIndex (NDIS 5.1) ) 。 (支援 NDIS 5.1 驅動程式,請參閱 Windows XP 中的 NdisOpenConfigurationKeyByIndex (NDIS 5.1) ) 。
目標平台 Universal
標頭 ndis.h (包含 Ndis.h)
程式庫 Ndis.lib
IRQL < DISPATCH_LEVEL
DDI 合規性規則 Irql_Miscellaneous_Function (ndis)

另請參閱

ANSI_STRING

MiniportInitializeEx

NdisCloseConfiguration

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByName

NdisReadConfiguration

NdisWriteConfiguration

ProtocolBindAdapterEx

UNICODE_STRING