NdisOpenConfigurationKeyByIndex function (ndis.h)

The NdisOpenConfigurationKeyByIndex function opens a subkey of a given open registry key that is designated by a caller-supplied handle.

Syntax

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

Parameters

[out] Status

A pointer to a caller-supplied variable in which this function returns the status of its attempt to open the designated registry key. Possible return values are one of the following:

NDIS_STATUS_SUCCESS

NDIS has initialized accessed to the subkey specified by KeyName and Index .

NDIS_STATUS_FAILURE

The key could not be opened.

[in] ConfigurationHandle

The handle to a registry key for which a subkey is to be opened. Typically, ConfigurationHandle is returned by the NdisOpenConfigurationEx function.

[in] Index

The index of the subkey to be opened. This zero-based value designates the subkey to be opened under the key already opened with ConfigurationHandle .

[out] KeyName

A pointer to an NDIS_STRING type containing a caller-supplied buffer in which this functions returns a counted string in the system-default character set. This string specifies the name of the opened subkey if the call succeeds. 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.

[out] KeyHandle

A pointer to a caller-supplied variable in which this function returns a handle to the opened subkey if the call succeeds.

Return value

None

Remarks

NdisOpenConfigurationKeyByIndex allows a driver to access configuration information that its installation file stored in a registry subkey.

Note that the ConfigurationHandle passed in to NdisOpenConfigurationKeyByIndex can be any valid handle to a registry key already opened by the caller. NdisOpenConfigurationKeyByIndex returns configuration information for subkeys relative to any valid
ConfigurationHandle .

Since NdisOpenConfigurationKeyByIndex references a subkey through an index, the driver does not have to specify subkey names. A driver can sequence through a set of registry subkeys by repeatedly calling NdisOpenConfigurationKeyIndex after incrementing the index until the function returns NDIS_STATUS_FAILURE, thereby indicating that there are no more subkeys to open.

After a driver has consumed and, possibly, modified the configuration information stored in the registry, it must call the NdisCloseConfiguration function to release the handle that is obtained from NdisOpenConfigurationKeyByIndex. NdisCloseConfiguration also frees any temporary storage that NDIS allocated for the driver's calls to the NdisReadConfiguration, NdisReadNetworkAddress, or NdisWriteConfiguration functions with the SubKeyHandle that NdisOpenConfigurationKeyByIndex returned.

Requirements

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

See also

ANSI_STRING

MiniportInitializeEx

NdisCloseConfiguration

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByName

NdisReadConfiguration

NdisWriteConfiguration

ProtocolBindAdapterEx

UNICODE_STRING