NdisWriteConfiguration 函数 (ndis.h)

NdisWriteConfiguration 函数为注册表中的指定条目写入调用方提供的值。 必须根据自身和 NdisReadConfiguration 函数串行调用此函数。

语法

void NdisWriteConfiguration(
  [out] PNDIS_STATUS                  Status,
  [in]  NDIS_HANDLE                   ConfigurationHandle,
  [in]  PNDIS_STRING                  Keyword,
  [in]  PNDIS_CONFIGURATION_PARAMETER ParameterValue
);

参数

[out] Status

指向调用方提供的变量的指针,在此变量中,此函数将调用的状态作为下列值之一返回:

NDIS_STATUS_SUCCESS

ParameterValue 提供的值为写入注册表中。 如果这是一个新条目,则 关键字 的名称也写入注册表中。

NDIS_STATUS_NOT_SUPPORTED

提供的 ParameterType 无效。

NDIS_STATUS_RESOURCES

NDIS 无法分配资源(通常是足够的内存)将请求的信息传输到注册表。

NDIS_STATUS_FAILURE

无法编写请求的信息。

[in] ConfigurationHandle

NdisOpenConfigurationEx返回的注册表项的句柄, NdisOpenConfigurationKeyByIndex,或 NdisOpenConfigurationKeyByName 函数。

[in] Keyword

指向描述调用方提供的计数字符串的NDIS_STRING类型的指针,该字符串在系统默认字符集中指定要为其写入值的条目的名称。 对于 Microsoft Windows 2000 及更高版本的驱动程序,此字符串包含 Unicode 字符。 也就是说,对于 Windows 2000 及更高版本,NDIS 将NDIS_STRING类型定义为 UNICODE_STRING 类型。

[in] ParameterValue

指向调用方提供的指针 NDIS_CONFIGURATION_PARAMETER 结构。

返回值

没有

言论

如果打开的注册表项下已存在名称与 Keyword 相同的条目,NdisWriteConfiguration 将其当前值替换为调用方提供的值。 否则,NdisWriteConfiguration 将具有给定名称和提供值的新值项添加到注册表。

在 Windows 2000 及更高版本的配置注册表中,NDIS Keyword值条目名称的同义词。 此类名称是 Unicode 字符的计数序列,以 null 字符结尾。

NdisWriteConfiguration 缓冲区,并在 Keyword 处复制调用方提供的字符串,以及 ParameterValue 中指定的调用方提供的数据。 当驱动程序使用 NdisCloseConfiguration 函数释放 ConfigurationHandle 时,将释放此内存。 NdisWriteConfiguration 的调用方负责在 Keyword 和为 分配的内存释放缓冲字符串 NDIS_CONFIGURATION_PARAMETER 结构。

除了调用 NdisWriteConfiguration,每个 NDIS 驱动程序都可以使用驱动程序 INF 文件中的 AddReg 指令自行在注册表中设置配置信息。

有关 Windows 2000 及更高版本的安装和安装文件的详细信息,请参阅 设备安装概述

要求

要求 价值
最低支持的客户端 Windows Vista 中支持 NDIS 6.0 和 NDIS 5.1 驱动程序(请参阅 NdisWriteConfiguration (NDIS 5.1)。 Windows XP 中支持 NDIS 5.1 驱动程序(请参阅 NdisWriteConfiguration (NDIS 5.1)。
目标平台 普遍
标头 ndis.h (包括 Ndis.h)
Ndis.lib
IRQL PASSIVE_LEVEL
DDI 符合性规则 Irql_Miscellaneous_Function(ndis)

另请参阅

ANSI_STRING

MiniportInitializeEx

NDIS_CONFIGURATION_PARAMETER

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeMemory

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadConfiguration

NdisUnicodeStringToAnsiString

UNICODE_STRING