NdisOpenConfigurationEx 函式 (ndis.h)

NDIS 驅動程式會呼叫 NdisOpenConfigurationEx 函式,以取得設定句柄,以允許存取登錄中的組態參數。

語法

NDIS_STATUS NdisOpenConfigurationEx(
  [in]  PNDIS_CONFIGURATION_OBJECT ConfigObject,
  [out] PNDIS_HANDLE               ConfigurationHandle
);

參數

[in] ConfigObject

呼叫端提供的和初始化的指標 NDIS_CONFIGURATION_OBJECT 結構。

[out] ConfigurationHandle

NdisOpenConfigurationEx 傳回登錄機碼句柄之呼叫端提供的變數指標。 登錄機碼會識別組態參數。

傳回值

NdisOpenConfigurationEx 會傳回下列其中一個狀態值:

傳回碼 Description
NDIS_STATUS_SUCCESS
NdisOpenConfigurationEx 已成功開啟驅動程式組態參數儲存所在的登錄機碼。
NDIS_STATUS_RESOURCES
NdisOpenConfigurationEx 因為資源不足而失敗。
NDIS_STATUS_FAILURE
NdisOpenConfigurationEx 如果上述值都未套用,則會傳回NDIS_STATUS_FAILURE。

備註

NdisOpenConfigurationEx 會在 ConfigurationHandle 參數傳回組態句柄。 組態句柄會與識別組態參數位置的登錄機碼相關聯。 呼叫端可以將組態句柄傳遞至其他 NDIS 組態函式,以讀取或寫入登錄中的資訊。

若要存取組態資訊,請使用組態句柄搭配下列函式:

NdisReadConfiguration

NdisWriteConfiguration

NdisOpenConfigurationKeyByName NdisOpenConfigurationKeyByIndex

與組態句柄相關聯的登錄數據類型取決於呼叫端在 NdisHandle 成員中傳遞至 NdisOpenConfigurationEx 的句柄類型 NDIS_CONFIGURATION_OBJECTConfigObject 參數所參考的結構。 句柄可以識別與驅動程式或驅動程序實例相關聯的參數。

如果驅動程式透過呼叫 來取得 NdisHandle 中的句柄 NdisMRegisterMiniportDriver 函式 NdisOpenConfigurationEx 會提供迷你埠驅動程式組態參數儲存所在登錄位置的句柄。 迷你埠驅動程式可以使用組態句柄,直到呼叫 為止 NdisMDeregisterMiniportDriver 函式。

如果驅動程式從 MiniportInitializeEx 函式的 MiniportAdapterHandle 參數取得 NdisHandle 中的句柄,NdisOpenConfigurationEx 會提供迷你埠配接器組態參數儲存所在登錄位置的句柄。 迷你埠驅動程式可以將組態句柄傳遞至 NdisReadNetworkAddress 函式,以擷取可由軟體和在本機管理的網路地址資訊。 迷你埠驅動程式可以使用組態句柄,直到 NDIS 停止迷你埠配接器並 傳回 MiniportHaltEx 函式為止。

如果驅動程式透過呼叫 來取得 NdisHandle 中的句柄 NdisRegisterProtocolDriver 函式 NdisOpenConfigurationEx 會提供通訊協定驅動程式組態參數儲存所在登錄位置的句柄。 通訊協議驅動程式可以使用組態句柄,直到呼叫 為止 NdisDeregisterProtocolDriver 函式。

如果 NdisHandle 中的句柄是 NDIS 在 ProtocolBindAdapterEx 函式之 BindParameters 參數上傳遞之NDIS_BIND_PARAMETERS結構的指標,NdisOpenConfigurationEx 會提供儲存通訊協定系結之組態參數的登錄位置句柄。 通訊協議驅動程式可以使用組態句柄,直到系結作業完成為止。

如果驅動程式藉由呼叫 NdisOpenAdapterEx 函式取得 NdisHandle 中的句柄,NdisOpenConfigurationEx 會提供儲存通訊協定系結之組態參數的登錄位置句柄。 通訊協議驅動程式可以使用組態句柄,直到呼叫 NdisCloseAdapterEx 函式為止。

如果篩選驅動程式在 NdisHandle 中取得句柄,請呼叫 NdisFRegisterFilterDriver 函式 NdisOpenConfigurationEx 會提供篩選驅動程式組態參數儲存所在登錄位置的句柄。 篩選驅動程式可以使用組態句柄,直到它們呼叫 為止 NdisFDeregisterFilterDriver 函式。

如果篩選驅動程式從 FilterAttach 函式的 NdisFilterHandle 參數取得 NdisHandle 中的句柄,NdisOpenConfigurationEx 會提供篩選模組組態參數儲存所在登錄位置的句柄。 篩選驅動程式可以使用組態句柄,直到 NDIS 中斷連結篩選模組並 傳回 FilterDetach 函式為止。 如果監視篩選驅動程式在 的 Flags 成員中指定NDIS_CONFIG_FLAG_FILTER_INSTANCE_CONFIGURATION旗標 NDIS_CONFIGURATION_OBJECT 結構中,當有多個篩選模組透過相同的迷你埠配接器設定時,驅動程式就可以存取特定篩選模組的篩選模組組態。 修改篩選驅動程式不得使用此旗標。

在驅動程式完成存取設定資訊之後,驅動程式必須呼叫 NdisCloseConfiguration 函式,以釋放組態句柄和相關資源。

注意 為了確保此函式在 IRQL = PASSIVE_LEVEL執行,驅動程式可以排程 NDIS 工作專案,並在工作專案回呼的內容中呼叫此和其他組態函式。
 

規格需求

需求
最低支援的用戶端 NDIS 6.0 和更新版本支援。
目標平台 Universal
標頭 ndis.h (包括 Ndis.h)
程式庫 Ndis.lib
IRQL PASSIVE_LEVEL
DDI 合規性規則 Irql_Miscellaneous_Function (ndis) NdisOpenConfigurationEx (ndis)

另請參閱

FilterAttach

FilterDetach

MiniportHaltEx

MiniportInitializeEx

NDIS_BIND_PARAMETERS

NDIS_CONFIGURATION_OBJECT

NdisCloseAdapterEx

NdisCloseConfiguration

NdisDeregisterProtocolDriver

NdisFDeregisterFilterDriver

NdisFRegisterFilterDriver

NdisMDeregisterMiniportDriver

NdisMRegisterMiniportDriver

NdisOpenAdapterEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadConfiguration

NdisReadNetworkAddress

NdisRegisterProtocolDriver

NdisWriteConfiguration

ProtocolBindAdapterEx