NdisWriteConfiguration function (ndis.h)

The NdisWriteConfiguration function writes a caller-supplied value for a specified entry into the registry. This function must be invoked serially with respect to itself and the NdisReadConfiguration function.

Syntax

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

Parameters

[out] Status

A pointer to a caller-supplied variable in which this function returns the status of the call as one of the following:

NDIS_STATUS_SUCCESS

The supplied value at ParameterValue was written into the registry. If this is a new entry, the name at Keyword also was written into the registry.

NDIS_STATUS_NOT_SUPPORTED

The supplied ParameterType is invalid.

NDIS_STATUS_RESOURCES

NDIS could not allocate resources, usually enough memory, to transfer the requested information to the registry.

NDIS_STATUS_FAILURE

The requested information could not be written.

[in] ConfigurationHandle

The handle to a registry key that was returned by the NdisOpenConfigurationEx, NdisOpenConfigurationKeyByIndex, or NdisOpenConfigurationKeyByName function.

[in] Keyword

A pointer to an NDIS_STRING type describing a caller-supplied counted string, in the system-default character set, specifying the name of an entry for which to write the value. For Microsoft Windows 2000 and later drivers, this string contains Unicode characters. That is, for Windows 2000 and later, NDIS defines the NDIS_STRING type as a UNICODE_STRING type.

[in] ParameterValue

Pointer to a caller-supplied NDIS_CONFIGURATION_PARAMETER structure.

Return value

None

Remarks

If an entry of the same name as at Keyword already exists under the opened registry key, NdisWriteConfiguration replaces its current value with the caller-supplied value. Otherwise, NdisWriteConfiguration adds a new value entry with the given name and supplied value to the registry.

In the configuration registry of Windows 2000 and later versions, an NDIS Keyword is a synonym for a value entry name. Such a name is a counted sequence of Unicode characters, terminated with a null character.

NdisWriteConfiguration buffers and copies the caller-supplied string at Keyword and the caller-supplied data specified at ParameterValue . This memory is freed when the driver releases the ConfigurationHandle with the NdisCloseConfiguration function. The caller of NdisWriteConfiguration is responsible for releasing the buffered string at Keyword and the memory allocated for the NDIS_CONFIGURATION_PARAMETER structure.

As an alternative to calling NdisWriteConfiguration, every NDIS driver can set up configuration information in the registry for itself using the AddReg directive in the driver's INF file.

For more information about setup and installation files for Windows 2000 and later versions, see Device Installation Overview.

Requirements

Requirement Value
Minimum supported client Supported for NDIS 6.0 and NDIS 5.1 drivers (see NdisWriteConfiguration (NDIS 5.1)) in Windows Vista. Supported for NDIS 5.1 drivers (see NdisWriteConfiguration (NDIS 5.1)) in Windows XP.
Target Platform Universal
Header ndis.h (include Ndis.h)
Library Ndis.lib
IRQL PASSIVE_LEVEL
DDI compliance rules Irql_Miscellaneous_Function(ndis)

See also

ANSI_STRING

MiniportInitializeEx

NDIS_CONFIGURATION_PARAMETER

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeMemory

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadConfiguration

NdisUnicodeStringToAnsiString

UNICODE_STRING