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 返回以下状态值之一:
返回代码 | 说明 |
---|---|
|
NdisOpenConfigurationEx 成功打开了存储驱动程序配置参数的注册表项。 |
|
NdisOpenConfigurationEx 由于资源不足而失败。 |
|
如果上述值均未应用,则 NdisOpenConfigurationEx 返回NDIS_STATUS_FAILURE。 |
注解
NdisOpenConfigurationEx 在 ConfigurationHandle 参数处返回配置句柄。 配置句柄与标识配置参数位置的注册表项相关联。 调用方可以将配置句柄传递给其他 NDIS 配置函数,以读取或写入注册表中的信息。
若要访问配置信息,请结合以下函数使用配置句柄:
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 函数来释放配置句柄和相关资源。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 NDIS 6.0 及更高版本中受支持。 |
目标平台 | 通用 |
标头 | ndis.h (包括 Ndis.h) |
Library | Ndis.lib |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | Irql_Miscellaneous_Function (ndis) , NdisOpenConfigurationEx (ndis) |